вступление
Я пытаюсь защитить исходный код PHP от "легко" прочитанного другими, как часть требования клиента.
Дело в том, что я пробовал много альтернатив:
1) bcompiler: с целью преобразования php-источника в байт-коды, но без успеха.
2) phc: невозможно сделать/установить.
3) Расширение BLENC: у меня есть проблемы с интеграцией с приложением Yii Framework.
Идея
Я думал, что "возможно", я могу "остаться" между ApacheServer и PHP, чтобы сделать что-то вроде этого...
1) HTTP-запрос поступает в APACHE SERVER
2) APACHE проверяет свой php файл
3) Согласно URL-адресу, я знаю, что эти php файлы закодированы/закодированы, поэтому, прежде чем APACHE их анализирует, я разархивирую файлы
4) APACHE анализирует и обрабатывает PHP.
5) zip/закодировать файлы снова (для защиты).
6) Верните результат.
Производительность не вызывает беспокойства
Это возможно?
Любое предложение?
Редакция:
1) FYI: сервер, на котором работает мое веб-приложение php, - это не хостинг, его клиентский сервер, поэтому у людей есть доступ к нему.
2) FYI: Сейчас я нашел временное решение, называемое SourceGuardian (http://www.sourceguardian.com/)
После попытки использовать BCompiler (невозможно использовать с PHP 5. 4+), PHC (невозможно компилировать), Monas (OLD устарел), BLENC (не думал о веб-приложениях с большим количеством файлов, отличных от файлов php) и т.д. И т.д. и т.д., пытаясь "СКРЫТЬ" мой исходный код PHP, SourceGuardian был единственным, который работал для меня, его коммерческий, но стоил 199 кубиков, его очень доступным. Я рекомендую всем попробовать.
→ (я буду продолжать смотреть на модули Apache) <-
Вы уверены, что вместо этого вы не имеете в виду Javascript? PHP-Code может только читать, кто имеет доступ к файлу на сервере. Невозможно прочитать его с помощью веб-браузера.
Если вы действительно хотите "защитить" ваш источник php, используйте простой мини-инструмент. Это делает код нечитаемым.
Вы можете использовать Apache Modules
для внесения любых изменений при обработке вашего запроса на сервере. Вы можете использовать запрос практически на любом уровне.
О модулях apache вы можете найти здесь: https://modules.apache.org/
Но моя забота заключается в том, что вы делаете вывод с сервера, должны быть HTML + java scripts + etc
Читаемые вашим браузером.