Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 01.05.2013, 22:01   #1
kettanaito
Веб-дизайнер
Форумчанин
 
Аватар для kettanaito
 
Регистрация: 11.08.2011
Сообщений: 305
По умолчанию Отмена RewriteRule

Доброго времени суток.
Я начал изучать язык php недавно и задался вопросом как php-документы загружаются без расширения ".php" (т.е. как вместо "mysite.com/page.php" получить "mysite.com/page"). Почитав форумы, нашел, что это делается с помощью .htaccess, а именно RewriteRule:
Код:
Options +FollowSymlinks -MultiViews
RewriteEngine on

# to make `/path/index.php` to /path/
RewriteCond %{THE_REQUEST} ^GET\s(.*/)index\.php [NC]
RewriteRule . %1 [NE,R=301,L]

RewriteCond %{THE_REQUEST} ^GET\s.+\.php [NC]
RewriteRule ^(.+)\.php$ /$1 [NE,R=301,L,NC]

RewriteCond %{REQUEST_URI} !\.php$ [NC]
RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule . %{REQUEST_URI}.php [L]
Я создал файл .htaccess в корне своего проекта (на локальнике через XAMPP проект доступен по адресу localhost/site/) с вышеуказанным содержимым и, как и было прочитано, ссылки начали подчиняться указанному правилу. Но полазив по сайту я заметил, что некоторые ссылки работают криво и вместо localhost/site/page я получаю localhost/page (без учета того, что мой сайт лежит не в корне localhost), а значит 404 . Заметив проблему, я решил отложить этот вопрос на будущее, когда мои знания этой проблемы дадут мне явное представление почему происходит подобное (ведь не все ссылки на сайте заменялись некорректно, а только некоторые). Я удалил файл .htaccess, но даже без него адресная строка продолжила преобразовываться, подчиняясь описанному правилу (в Chrome) и все-то было ничего, но те самые "битые" ссылки так и остались ссылаться на несуществующие файлы, что, не много не мало, делает половину сайта нерабочей. Открываю сайт через Safari - все ссылки работают правильно.

Очень прошу помочь мне, подскажите почему Chrome запомнил это правило (по крайней мере так выглядит, ведь файла .htaccess больше нет, браузер будто бы сохранил его где-то), как можно вернуть все к прежнему состоянию? Пробовал создавать пустой .htaccess, перезапускать XAMPP, но все равно ничего не меняется.
kettanaito вне форума Ответить с цитированием
Старый 03.05.2013, 00:29   #2
dr.Chas
***
Участник клуба
 
Аватар для dr.Chas
 
Регистрация: 30.07.2007
Сообщений: 1,162
По умолчанию

Попробуйте почистить кэш
dr.Chas вне форума Ответить с цитированием
Старый 03.05.2013, 18:46   #3
kettanaito
Веб-дизайнер
Форумчанин
 
Аватар для kettanaito
 
Регистрация: 11.08.2011
Сообщений: 305
По умолчанию

dr.Chas, спасибо, это помогло! Даже не подумал за кэш, искал почему-то в cookie.. Спасибо!
kettanaito вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
RewriteRule и .htaccess Abuhamed PHP 1 30.04.2013 18:28
Вопрос RewriteRule scalpel PHP 12 14.01.2012 19:41
файл .htaccess RewriteRule aferistz PHP 0 10.04.2011 11:52
RewriteRule в .htaccess Gorychev HTML и CSS 3 23.09.2010 13:15
RewriteRule wall66 PHP 3 05.01.2009 16:01