Нет перенаправления apache при использовании htaccess RewriteRule - PullRequest
0 голосов
/ 24 февраля 2012

Я только недавно настроил новую среду разработки, и с тех пор я не могу получить доступ к какой-либо странице моего сайта без домашней страницы.

Например, если я зайду на: www.herpandderp.com/contact_us выдает ошибку 404.

Нет каталога с именем / contact_us, и у меня есть код в моем index.php, который обрабатывает URL-адрес как параметр, принимает его и будет включать / требовать соответствующий код по мере необходимости.

Это запись в моем корне .htaccess:

RewriteRule ^([^.]+)$ /index.php?url=$1 [L,QSA]

Если я делаю phpinfo, я получаю следующее под apache2handler (так что я знаю, что mod_rewrite установлен):

1012 * Loaded модули ядра PreFork http_core mod_so mod_auth_basic mod_auth_digest mod_authn_file mod_authn_alias mod_authn_anon mod_authn_dbm mod_authn_default mod_authz_host mod_authz_user mod_authz_owner mod_authz_groupfile mod_authz_dbm mod_authz_default mod_log_config mod_logio mod_env mod_mime_magic mod_expires mod_deflate mod_headers mod_usertrack mod_setenvif mod_mime mod_status mod_autoindex mod_info mod_vhost_alias переговоры по mod_dir mod_actions mod_speling mod_userdir mod_alias mod_rewrite mod_cache mod_disk_cache mod_file_cache mod_mem_cache mod_perl 101_ *пройти через index.php?У меня есть кубик в первой строке сценария, и он не попадает в него.Тем не менее, работает , когда я делаю www.herpandderp.com/?url=contact.

Я чувствую, что это проблема конфигурации Apache, так как код хорошо работает в других средах.

Ответы [ 2 ]

1 голос
/ 24 февраля 2012

Убедитесь, что в вашем httpd.conf, что на рассматриваемом сайте установлен AllowOverride, в противном случае перезапись не сможет переопределить настройки по умолчанию для этого сайта.

0 голосов
/ 24 февраля 2012

В вашем .htaccess добавьте в первую строку:

RewriteEngine On

Это работает?

...