Как отследить Apache 301, перемещенный навсегда?


9

У меня есть один виртуальный хост на моей машине, к которому я обращаюсь локально. Я использую Apache2 под Windows 7.

При доступе к этому хосту я вижу в Fiddler, что сервер перенаправляет браузер на другой удаленный сайт с ответом

301 Moved Permanently

Но я абсолютно не могу найти, где это настроено. Я ищу во всех файлах .htaccess URL целевого сайта, во всех файлах на данном виртуальном хосте этот URL, во всех каталогах Apache ...

Как отследить, что заставляет Apache делать это перенаправление?

Ответы:


5

Это не обязательно конфигурация Apache, которая делает это - Apache передает запрос динамическому генератору контента?

Ищите две вещи в вашем конфиге Apache; Redirectи RewriteRuleдирективы, которые имеют Rфлаг. Если их нет, то Apache не выполняет перенаправление (за исключением /directorynameперенаправления /directoryname/, но это не так, как здесь), и вам нужно взглянуть на динамический код, который передает Apache. просьба к.


Спасибо Шейн, я выдернул свои волосы, пытаясь понять, почему мой пост терялся с редиректом 301. Оказалось, что / directoryname перенаправлял на / directoryname / .... пропустил очевидное. Спасибо!
Tevo D

1

Спасибо за ответ выше, и он указывает мне правильное направление. В моем случае редирект 301 вызван правилом перезаписи всего сайта.

RewriteEngine on
RewriteCond %{HTTP_HOST} ^voicent.com
RewriteRule ^/(.*)$ http://www.voicent.com/$1 [L,R=301]

Приведенное выше правило заставляет использовать каноническое имя хоста. Каждый URL начинается с www.domain.com, а не domain.com. Вы можете дополнительно проверить это в журнале доступа Apache.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.