Вы должны учитывать ваши цели:
1) Вы пытаетесь запретить людям читать / изменять ваш код? Если да, вам понадобится инструмент запутывания / шифрования. Я успешно использовал Zend Guard .
2) Вы пытаетесь предотвратить несанкционированное распространение вашего кода ?? Лицензионное соглашение EULA / проприетарная лицензия даст вам юридическую силу для предотвращения этого, но на самом деле не остановит его. Схема ключа / активации позволит вам активно отслеживать использование, но может быть удалена, если вы также не зашифруете свой код. Zend Guard также имеет возможность привязывать определенный скрипт к конкретному клиентскому компьютеру и / или создавать ограниченные по времени версии кода, если вы этого хотите.
Я не знаком с vBulletin и тому подобным, но им нужно либо зашифровать / запутать, либо доверять своим пользователям, чтобы они поступали правильно. В последнем случае у них есть защита от наличия EULA, которая запрещает поведение, которое они считают нежелательным, и правовая система, подтверждающая нарушения EULA.
Если вы не готовы / не можете принять законные меры для защиты своего программного обеспечения и не хотите шифровать / запутывать его, вы можете: а) выпустить его с лицензионным соглашением, чтобы у вас был законный вариант, если вы когда-нибудь понадобится и надейтесь на лучшее, или б) подумайте, может ли лицензия с открытым исходным кодом быть более подходящей, и просто разрешить ее распространение.