2015-02-15 2 views
0

Хорошо, я очень люблю nginx и сделал что-то очень глупое. Я написал следующий код на своих доступных файлах. Удаление его, похоже, не отменяет его.undo Постоянное правило перезаписи Nginx

location ~* .(jpg|jpeg|png|gif|ico|css|js)$ { 
    rewrite ^/(.*)/$ /?page=$1 last; 
    rewrite ^(.*[^/])$ $1/ permanent; 
} 

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

Как я могу отменить это?

Сайт еще не опубликован, поэтому я не беспокоюсь о том, что браузеры других людей улавливают перенаправление после устранения этой проблемы.

Есть ли место на моем сервере, которое продолжает перенаправляться, несмотря на то, что правило больше не находится на моих сайтах и ​​папке с включенной поддержкой сайтов? Это сервер linux/ubuntu, и пока это первый сайт, на котором работает этот сервер.

Благодарим вас за помощь или идеи относительно того, как это решить!

ответ

0

Если вы добавили этот блок местоположения на свой/один из ваших сайтов в nginx/sites-available и после этого связали файл с nginx/сайтами, он может быть только в nginx/sites-available/site ,

Однако если вы скопировали/Nginx/сайты Недоступные/сайт Nginx/сайтов с поддержкой/сайта вы также должны удалить файл в местах с поддержкой ...

Чтобы быть уверенным, вы перезагрузки Nginx после удаления конфигурации?

+0

Спасибо за ответ. Запутанная часть заключается в том, что я проверил сайты и включил их, и их нет. Доступные и доступные сайты имеют символическую привязку. И я перезагрузил nginx. И еще более запутанным кажется, что это только действие страницы, которую я запускал в браузере, когда у меня было правило перезаписи на месте. Он добавляет/и разбивает все файлы png и js. Все остальные страницы на сайте работают нормально. Может ли правило перезаписи кэшироваться где-то еще на моем сервере? Еще раз спасибо! – user3420707

+0

Можете ли вы предоставить файл конфигурации nginx для своего сайта? – Lich4r

+0

Я не вижу, как правило перезаписи можно кэшировать где-нибудь, если вы не поместите его в nginx/nginx.conf. Вы можете попытаться очистить кеш браузера. – Lich4r

1

Согласно rfc2616 section 10.3.2 о статусе HTTP 301

Запрошенный ресурс был назначен новый постоянный URI, и любые будущих ссылок на этот ресурс следует использовать один из возвращенных URI. Клиенты с возможностями редактирования ссылок должны автоматически перенаправить ссылки на Request-URI на одну или несколько новых ссылок , возвращенных сервером, где это возможно. Этот ответ равен , если не указано иное.

Много браузеров использовать, чтобы кэшировать ответ локально, так что не теряйте другой запрос при вызове же URL, в отличие от 302, который перенаправляет, но не кэш.
Чтобы решить эту проблему, вам просто нужно очистить локальный кеш и даже весь кеш, если вы сделали это сегодня, вы могли бы просто очистить кеш сегодняшнего дня, и все вернется к нормальной жизни.

+0

Я открыл URL-адрес в режиме инкогнито в своем браузере и получил все, что я сделал. Как сказал @Mohammad AbuShady – Hamedz

Смежные вопросы