Перенаправление 301 в .htaccess вызывает ошибку 500 сервера (перенаправление на не-URL) - PullRequest
8 голосов
/ 16 марта 2011

имеют такого рода ошибки.

При добавлении правила Redirect 301 в файл .htaccess, например:

Redirect 301 "/page1.html" "/dir1/"

Мой сайт завершается с ошибкой 500 сервера и в журнале ошибок apache этопоявляется сообщение об ошибке:

[Wed Mar 16 11:08:52 2011] [alert] [client 127.0.0.1] /home/htdocs/site.com/www/.htaccess: Redirect to non-URL

Модификация перезаписана, также пытались предоставить URL без кавычек.

На рабочем сервере этот .htaccess работает нормально, нопо местным причинам проблемы

Любые идеи, пожалуйста)


Это правило работает

Redirect 301 "/page1.html" "http://www.site.com/dir1/"

, но мне нужен способ указать относительные пути вместополные URL (рабочий сервер работает таким образом)

Ответы [ 3 ]

8 голосов
/ 07 апреля 2011

Изменены все Redirect 301 правила:

RewriteRule ^/page1.html$ /dir1/page.html [R=301,L]

теперь работает.Но как это работает на производстве?

1 голос
/ 31 мая 2016

У меня была такая же проблема, для меня это тоже не сработало:

RewriteRule ^/page1.html$ /dir1/page.html [R=301,L]

Для меня сработало: удалить ведущую косую черту и добавить мягкую косую черту с помощью?, вот так:

RewriteRule ^(page1.html)/?$ dir1/page.html [R=301,L]
1 голос
/ 25 марта 2011

Для меня у меня была точно такая же проблема. Добавление "http://domain.com" перед" / mypage "сработало; я все еще тестирую его, чтобы заставить его работать без изменений, как на моем производственном сервере. Так что мой .htaccess в моей локальной тестовой среде прошел так:

СЛОМЛЕННОЕ: Перенаправить 301 / mypage / directory1 / sub-directory / mypage /

ИСПРАВЛЕНО: Редирект 301 http://mydomain.com/mypage http://mydomain.com/directory1/sub-directory/mypage/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...