Centos htaccess не читается - PullRequest
       10

Centos htaccess не читается

9 голосов
/ 18 декабря 2011

Я работаю на новом сервере и через yum установил группу "Веб-сервер". Php и mysql работают нормально, но я не могу заставить работать .htaccess.

Вот мой тестовый файл .htaccess:

WASD_TEST_CALL_ERROR

Я поместил это как .htaccess в тестовую папку вместе со страницей index.html. Вместо того, чтобы сообщать об ошибке, он идет вперед и загружает страницу индекса без каких-либо ошибок.

Спасибо

Ответы [ 3 ]

30 голосов
/ 17 июня 2012

Убедитесь, что для AccessFileName установлено значение .htaccess

Поиск в httpd.conf директиве AccessFileName. Он определяет имя распределенного файла конфигурации:

grep -i AccessFileName httpd.conf

Убедитесь, что пользователям разрешено использовать файл .htaccess

То, что вы можете поместить в эти файлы, определяется директивой AllowOverride. Эта директива указывает в категориях, какие директивы будут соблюдаться, если они будут найдены в файле .htaccess. Если для этой директивы установлено значение None, файлы .htaccess полностью игнорируются. В этом случае сервер даже не будет пытаться прочитать файлы .htaccess в файловой системе.

grep -i AllowOverride httpd.conf

Если для этой директивы задано значение All, любая директива, имеющая контекст .htaccess, разрешена в файлах .htaccess: AllowOverride All

Сохраните и закройте файл. Перезапустите httpd:

service httpd restart
3 голосов
/ 18 декабря 2011

Вы установили AllowOverride в конфигурации Apache?Если нет, установите AllowOverride с none на all.

2 голосов
/ 20 февраля 2017

В CentOS7 должно помочь следующее:

  1. Под строкой AllowOverride определяет, какие директивы могут быть помещены в файлы .htaccess в /etc/httpd/conf/httpd.conf: заменить AllowOverride None на AllowOverride All

  2. В /etc/httpd/conf.modules.d/00-base.conf check rewrite_module должно быть:

    LoadModule rewrite_module modules/mod_rewrite.so

  3. .htaccess файл должен находиться в / var / www / html /

  4. Пример содержимого .htaccess:

    AuthUserFile /var/www/.htpasswd AuthGroupFile /dev/null AuthName "Please Enter Password" AuthType Basic Require valid-user
  5. проверить и перезапустить Apache:

    httpd -t

    /bin/systemctl restart httpd.service
...