|
Компьютерный форум OSzone.net » Компьютеры + Интернет » Вебмастеру » mod_rewrite etc. |
|
mod_rewrite etc.
|
Ветеран Сообщения: 1864 |
Профиль | Отправить PM | Цитировать Вот только недавно познакомился с этим замечательным модулем
Вот что я вынес из данного знакомства-с помощью mod_rewrite можно: 1) Самое распространённое использование-перезапись урлов, например есть урл index.php?forum=webmaster&topic=45 можно переписать в index.php/webmaster/45, что для некоторых поисковых машин намного более лучший вариант 2)запретить доступ к определённому файлу RewriteRule ^file.ext$ - [F] 3)запретить доступ определённому браузеру, сборщику почты, доступ с определённого айпи или пришедшим с определённого сайта RewriteCond %{HTTP_USER_AGENT} ^Browser_Name [OR] RewriteCond % {REMOTE_HOST} ^www.badsite.com$ [OR] RewriteCond % {REMOTE_ADDR} ^169.45.23.01$ RewriteRule ^.*$ - [F] Это было самое распространённое применение данного модуля, но есть ещё много всяких интересных хитростей: наприсер я недавно нашёл такое применение-при вызове страницы pic.html, нужно показывать картинку дня, поэтому можно переписать этот урл в pic-06-06.html c помощью серверных переменных TIME_MON и TIME_DAY RewriteRule ^pic.html$ pic-%{TIME_MON}-%{TIME_DAY}.html Или ещё кому нравится можно переписать файл index.php кому очень захочется в index.bmp Если кто ещё знает интересные применения данного модуля, то постите тут |
|
------- Отправлено: 14:41, 06-06-2004 |
Deadooshka Сообщения: 2499
|
Профиль | Отправить PM | Цитировать у меня правило рабочее (проверено), только небольшие поправки (см. пост выше)...
|
Отправлено: 16:02, 30-03-2010 | #131 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Новый участник Сообщения: 18
|
Профиль | Отправить PM | Цитировать может нужны какие то доп. настройк чтоб твой код работал у меня?? у меня апач 2.2.9
|
------- Отправлено: 16:05, 30-03-2010 | #132 |
Deadooshka Сообщения: 2499
|
Профиль | Отправить PM | Цитировать Цитата total_abandon:
Цитата total_abandon:
вот .htaccess |
||
Отправлено: 16:12, 30-03-2010 | #133 |
Новый участник Сообщения: 18
|
Профиль | Отправить PM | Цитировать |
------- Отправлено: 16:46, 30-03-2010 | #134 |
Deadooshka Сообщения: 2499
|
Профиль | Отправить PM | Цитировать Цитата total_abandon:
если $_GET['page'] не существует, то будет e_notice. Нужно проверять наличие (empty/isset). хотя можно и заткнуть (@$_GET['page']) |
|
Отправлено: 17:45, 30-03-2010 | #135 |
Новый участник Сообщения: 9
|
Профиль | Отправить PM | Цитировать Здравствуйте. Уже третий день парюсь, ничего не могу поделать.
Делаю ЧПУ с помощью mod_rewrite. Мне нужно, чтобы ссылки site.ru/ru/page ссылались на index.php?lang=ru&page=page При отсутствии последней переменной пусть посылается только одна. .htaccess: DirectoryIndex /ru/ RewriteEngine On RewriteBase / RewriteRule ^([A-Za-z]+)/?$ index.php?lang=$1 [L] RewriteRule ^([A-Za-z]+)/([A-Za-z]+)/?$ index.php?lang=$1&page=$2 [L] мы какбы находимся в папке ru/about. Со всеми вытекающими: не находит страницы и стили. Заранее благодарен) |
Отправлено: 18:39, 30-03-2010 | #136 |
Deadooshka Сообщения: 2499
|
Профиль | Отправить PM | Цитировать можно добавить проверку на наличие файла (или другие условия),
RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^([A-Za-z]+)(/([A-Za-z]+))?/?$ index.php?lang=$1&page=$3 [L] |
Отправлено: 19:39, 30-03-2010 | #137 |
Новый участник Сообщения: 9
|
Профиль | Отправить PM | Цитировать Ну это все варианты варианты, но меня мучает один вопрос.
Почему /ru/page1/ он пересылает в файл, но ../ для него становится этими папками? |
Отправлено: 04:57, 31-03-2010 | #138 |
Новый участник Сообщения: 18
|
Профиль | Отправить PM | Цитировать у меня вообще не работает код sham-а, только работает указанный мною, все эты скобки, квадратные круглые все это не работает. мне нужно чтоб нормально работали эти два правила вместе... но никак .... одно правило со всем справляется тока когда меняешь язык и остается одна переменная GET выдает что не найденна такая папка на сервере... посоветуйте что нибудь все перепробовал.
|
------- Отправлено: 08:46, 31-03-2010 | #139 |
Deadooshka Сообщения: 2499
|
Профиль | Отправить PM | Цитировать Цитата droZel:
Цитата total_abandon:
Если код не работает у вас, это не значит, что он неправильный. |
||
Отправлено: 14:47, 31-03-2010 | #140 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
Прочее - mod_rewrite .htaccess | Wimpheling | Общий по Linux | 0 | 08-10-2013 14:57 | |
Разное - Включение модуля mod_rewrite | Lenivets1 | Программирование и базы данных | 5 | 13-02-2012 20:00 | |
mod_rewrite | Jaels | Программное обеспечение Linux и FreeBSD | 2 | 06-01-2012 12:09 | |
mod_rewrite | kishert | Вебмастеру | 3 | 10-03-2009 06:52 | |
mod_rewrite | PHANTOM777 | Вебмастеру | 1 | 20-07-2008 10:00 |
|