Может ли кто-нибудь получить доступ к моему исходному коду PHP?
Можно ли скрыть файл .php на сервере...?
У меня есть веб-сайт, который иногда вызывает php-файлы внутри iframes, теперь мне бы не понравилось, если бы кто-то скопировал этот код, так как бы я его скрыл? Или мне нужно его зашифровать?
Скорость в моем случае имеет огромное значение, поэтому все, что не влияет на производительность, ценится!
Спасибо
7 answers
При правильно настроенном веб-сервере PHP-код не виден посетителям вашего сайта. Чтобы PHP-код был доступен людям, посещающим ваш веб-сайт, сервер должен быть настроен на отображение его в виде текста, а не на обработку в виде PHP-кода.
Итак, другими словами, если вы посещаете свой веб-сайт и видите HTML-страницу, а не PHP-код, ваш сервер работает правильно, и никто не может получить доступ к PHP-коду.
Какой код? Ваш исходный код PHP? Единственный код, который видит пользователь, - это ваш html-код, PHP обрабатывается на стороне сервера!
Если ваши php-файлы анализируются http-сервером, никто не сможет их получить.
Если кто-то получит доступ к php-файлу на вашем сайте, все, что он увидит, - это код, выводимый PHP-скриптом (например, любой HTML или Javascript) - он не увидит источник самой страницы PHP (и не будет иметь возможности получить к ней доступ).
Если вы обеспокоены тем, что они видят вывод (например, HTML, который генерирует PHP-скрипт) с практической точки зрения, вы ничего не можете с этим поделать (самое большее, что вы можете сделать, это запутать его, но это в значительной степени бессмысленно).
У меня есть веб-сайт, который иногда вызывает php-файлы внутри iframes, теперь мне бы не понравилось, если бы кто-то скопировал этот код, так как бы я его скрыл? Или мне нужно его зашифровать?
Нет, это не имеет смысла и не сработает. Вы должны понимать, что PHP-код выполняется на вашем сервере для обслуживания HTTP-запроса, и что iframe приводит к отдельному HTTP-запросу с главной страницы.
Если вы хотите запретить другим пользователям включать iframe в на их собственной странице вы могли бы проверить заголовок ссылки , и на странице iframe отобразится ошибка, если ссылка не с вашего сайта, но это может вызвать проблемы у некоторых легализованных пользователей, а также может быть обойдено.
Альтернативное решение: не используйте iframes; вместо этого интегрируйте PHP-код, который в настоящее время отображает содержимое iframe на вашей главной странице. Это будет работать для всех пользователей и не может быть обойдено.
Конечно, вы все равно не можете помешать другим запрашивать вашу страницу, извлекать содержимое из HTML и отображать его на своей странице - вот как работает Интернет.
Если вы все еще параноик после предоставленных здесь заверений, вы можете значительно усложнить чтение своего кода для кого-то другого, "запутав" его ( Ссылка на Википедию).
Если вы загуглите "php-обфускатор", вы найдете множество продуктов PHP-обфускатора, многие из которых бесплатны.
Несколько примеров: PHP-обфускатор
Профессиональный PHP-Обфускатор/Кодировщик
Запутывание не влияет на производительность. Только удобочитаемость для людей.
Поместите ваши важные файлы, такие как пароли, логин и т. Д., В папку за пределами веб-папки. Например, в разделе C: вы можете указать этот путь включения в файле php ini. Тогда вы в полной безопасности. Определенно вам следует хранить свой код доступа к mysql вне папок htdocs. Я думаю, что php-код "включает". Так что проверьте себя. Удачи