Htaccess не работает: apache — Не работает .htaccess

Содержание

apache — Не работает .htaccess

Задать вопрос

Вопрос задан

Изменён 3 года назад

Просмотрен 4k раз

Не работает переадресация всех запросов на index.php и выдает ошибку, как я понял, то проблема в том, что апач не учитывает настройки моего файла .htaccess.

Вот настройки апача из файла настройек httpd.conf

ServerRoot "c:/Server/bin/Apache24"
Listen 80
LoadModule access_compat_module modules/mod_access_compat.so
LoadModule actions_module modules/mod_actions.so
LoadModule alias_module modules/mod_alias.so
LoadModule allowmethods_module modules/mod_allowmethods.so
LoadModule asis_module modules/mod_asis.so
LoadModule auth_basic_module modules/mod_auth_basic.so
LoadModule authn_core_module modules/mod_authn_core.so
LoadModule authn_file_module modules/mod_authn_file.so
LoadModule authz_core_module modules/mod_authz_core.
so LoadModule authz_groupfile_module modules/mod_authz_groupfile.so LoadModule authz_host_module modules/mod_authz_host.so LoadModule authz_user_module modules/mod_authz_user.so LoadModule autoindex_module modules/mod_autoindex.so LoadModule cgi_module modules/mod_cgi.so LoadModule dir_module modules/mod_dir.so LoadModule env_module modules/mod_env.so LoadModule include_module modules/mod_include.so LoadModule isapi_module modules/mod_isapi.so LoadModule log_config_module modules/mod_log_config.so LoadModule mime_module modules/mod_mime.so LoadModule negotiation_module modules/mod_negotiation.so LoadModule rewrite_module modules/mod_rewrite.so LoadModule setenvif_module modules/mod_setenvif.so <IfModule unixd_module> User daemon Group daemon </IfModule> ServerAdmin admin@example.com ServerName localhost DocumentRoot "c:/Server/data/htdocs/" <Directory /> Options Includes Indexes FollowSymLinks AllowOverride All Allow from all </Directory> <Directory "c:/Server/data/htdocs/"> Options Indexes FollowSymLinks AllowOverride All Allow from all </Directory> <IfModule dir_module> DirectoryIndex index.
html index.htm index.shtml index.php </IfModule> <Files ".ht*"> Require all denied </Files> ErrorLog "logs/error.log" LogLevel warn <IfModule log_config_module> LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined LogFormat "%h %l %u %t \"%r\" %>s %b" common <IfModule logio_module> LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio </IfModule> CustomLog "logs/access.log" common </IfModule> <IfModule alias_module> ScriptAlias /cgi-bin/ "c:/Apache24/cgi-bin/" </IfModule> <Directory "c:/Apache24/cgi-bin"> AllowOverride None Options None Require all granted </Directory> <IfModule mime_module> AddType application/x-httpd-php .php AddType application/x-httpd-php-source .phps TypesConfig conf/mime.types AddType application/x-compress .Z AddType application/x-gzip .gz .tgz </IfModule> <IfModule proxy_html_module> Include conf/extra/proxy-html.
(.*)$ index.php/$1 [L] RewriteBase /siteroot/

Зарегистрируйтесь или войдите

Регистрация через Google

Регистрация через Facebook

Регистрация через почту

Отправить без регистрации

Почта

Необходима, но никому не показывается

Отправить без регистрации

Почта

Необходима, но никому не показывается

Нажимая на кнопку «Отправить ответ», вы соглашаетесь с нашими пользовательским соглашением, политикой конфиденциальности и политикой о куки

.

htaccess не работает apache

у меня есть сервер от сервиса AWS EC2, работающего на Linux ubuntu, и я установил apache, php и mysql.

Я добавил .htaccess файл в моем корне документа /var/www/html.

Я ввел в него этот код: ErrorDocument 404 /var/www/html/404.php и он все еще не появляется.

Я продолжал вводить эту команду несколько раз:sudo service httpd restart перезагрузить сервер, но никаких изменений не отображается…

как я могу исправить это… Я сделала что-то не так?

спасибо вперед!


во-первых, обратите внимание, что перезапуск httpd не требуется .htaccess файлы. .файлы htaccess предназначены специально для людей, которые не имеют root — ie, не имеют доступа к файлу конфигурации сервера httpd и не могут перезапустить сервер. Поскольку вы можете перезапустить сервер, вам это не нужно .htaccess файлы и может использовать конфигурацию главного сервера напрямую.

во-вторых, если .файлы htaccess игнорируются, вам нужно проверить, правильно ли установлен AllowOverride. Видеть http://httpd.apache.org/docs/2.4/mod/core.html#allowoverride для сведения. Вы также должны убедиться, что он установлен в правильной области — т. е. в правом блоке в вашей конфигурации. Будьте уверены, что вы не редактирование в блоке, например.

в-третьих, если вы хотите убедиться, что .htaccess файл на самом деле читается, положить мусор в нем. Недопустимая строка, например «недопустимая строка здесь», в вашем .файл htaccess, приведет к ошибке сервера 500, когда вы указываете браузеру на каталог, содержащий этот файл. Если это не так, то у вас нет AllowOverride настроен правильно.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *