#php #.htaccess
#php #.htaccess
Вопрос:
У меня есть тестовый сервер и производственный сервер. Мне нужны разные файлы .htaccess для тестирования и производства. При тестировании я хочу, чтобы PHP отображал ошибки, но, конечно, я не хочу этого при производстве.
Я знаю, что могу установить «ошибки отображения» и в PHP, но тогда я должен делать это в каждом скрипте, который я запускаю. Делать это с :
php_flag display_errors On
в .htaccess в корневой папке намного проще.
Итак, мой вопрос в том, как я могу создать 2 разных файла .htaccess и в зависимости от сервера автоматически использовать правильный?
Комментарии:
1. Почему бы вам просто не изменить php.ini?
2. Разве вы не можете просто использовать два разных файла? Сохраните его на своем локальном компьютере и убедитесь, что вы не перезаписываете им текущий файл…
3. @DisgrunteldGoat: именно этим я сейчас и занимаюсь. Но тогда вам всегда придется быть осторожным при развертывании. Должно быть лучше, если это автоматически, что я уже использую для настроек базы данных и т. Д (config.php это позволяет найти имя сервера / домена, на котором оно выполняется).
4. @halfdan: Я не могу просто изменить php.ini, поскольку на этом сервере есть и другие домены, некоторые тестовые, а некоторые производственные
Ответ №1:
Apache использует директиву конфигурации для поиска этих файлов:
AccessFileName .htaccess
Итак, если вы измените свой сервер разработки с
AccessFileName .htaccessdev
в /etc/apache2.conf
этом случае вы можете обрабатывать 2 версии настроек, одну для производства в .htaccess и одну для разработки в .htaccessdev.
Фильтры безопасности обычно работают нормально и определяются таким образом:
<Files ~ "^.ht">
Order allow,deny
Deny from all
</Files>
который охватывает оба имени.