Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум Apache

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Затирают ли mod_rewrite правила физические папки и файлы?
 
 автор: alexander95   (17.02.2012 в 18:02)   письмо автору
 
 

Если создать, например, папку /foo/asd и в .htaccess написать правило для mod_rewrite, чтобы запрос /?foo=asd менялся на /foo/asd, что будет при обращении к сайту с таким запросом? Я попаду в папку или же на страницу?
В mod_rewrite не шарю, так что проверить не могу.

  Ответить  
 
 автор: cheops   (17.02.2012 в 18:14)   письмо автору
 
   для: alexander95   (17.02.2012 в 18:02)
 

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

  Ответить  
 
 автор: Sfinks   (17.02.2012 в 20:02)   письмо автору
 
   для: alexander95   (17.02.2012 в 18:02)
 

> чтобы запрос /?foo=asd менялся на /foo/asd
скорей всего вы имели ввиду наоборот, чтобы запрос /foo/asd менялся на путь /?foo=asd

По умолчанию - да, затирают. Если перед правилом написать
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule foo/asd index.php?foo=asd
то не затрется.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования