gamma
Guest
Как правильно написать Rewrite?
Познакомился с mod_rewrite недавно. Решил прочитать мануэл и всякие др. статьи(Вроде понятно как он работает).
Но когда просмотрел все threadы посвешеные ему окончательно запутался(Все пишут по разному).
Задача у меня такая: переделать URL так чтоб поисковиками индексировался. И страницы были определенные.(т.е. одно правиол ко всем не подходит)
Cогласен тема избитая, обсужденная 100 раз, но есть ньюансы кот. я не могу разобрать.
(например видел такое: если меняем на /something.php?id=$1 и т. д. то указывается следом [T-application/x-httpd-php,L] другие ето не пишут.
Моя конкретная задача
например.
http://mysite/about-my/ заменяем на
http://mysite/index.php?act=ab
...
http://mysite/my-news/12-10 на
http://mysite/index.php?news=..&id=...
и т.д.
Напиал такой .htaccess
------------------------------
RewriteEngine On
RewriteBase /
Options +FollowSymlinks
RewriteRule ^/about-my/([^/]+) /index.php?act=about [L]
RewriteRule ^/my-news/([^/]+) /index.php?act=news&id=1$ [L]
т.д.
RewriteRule ^/costumers/([^/]+) /costumers/index.php [L]
RewriteRule ^/(.*)$ /index.php
-------------------------------------
По правилам, как я понял, RewriteRulы просматривается сверху вниз, если Pattern - подходит меняем на Substitution с [Flag(s)]. В моем случае стоит [L] кот. прекращает последующие правила как я понимаю.
Но думаю что мой .htaccess работать не будет.
Помогите разобратся, когда и что надо писать.
Или подскажите что я не правильно понял по теме mod_rewrite. C регулярными у меня проблема.
Дома под виндой 98 работает только такое правило:А на серваке эксперементироватьне охото.
RewriteCond %{REMOTE_ADDR} ^127\.0\.0\.1$
RewriteRule ^.* - [F].
Другие не хотят.
Познакомился с mod_rewrite недавно. Решил прочитать мануэл и всякие др. статьи(Вроде понятно как он работает).
Но когда просмотрел все threadы посвешеные ему окончательно запутался(Все пишут по разному).
Задача у меня такая: переделать URL так чтоб поисковиками индексировался. И страницы были определенные.(т.е. одно правиол ко всем не подходит)
Cогласен тема избитая, обсужденная 100 раз, но есть ньюансы кот. я не могу разобрать.
(например видел такое: если меняем на /something.php?id=$1 и т. д. то указывается следом [T-application/x-httpd-php,L] другие ето не пишут.
Моя конкретная задача
например.
http://mysite/about-my/ заменяем на
http://mysite/index.php?act=ab
...
http://mysite/my-news/12-10 на
http://mysite/index.php?news=..&id=...
и т.д.
Напиал такой .htaccess
------------------------------
RewriteEngine On
RewriteBase /
Options +FollowSymlinks
RewriteRule ^/about-my/([^/]+) /index.php?act=about [L]
RewriteRule ^/my-news/([^/]+) /index.php?act=news&id=1$ [L]
т.д.
RewriteRule ^/costumers/([^/]+) /costumers/index.php [L]
RewriteRule ^/(.*)$ /index.php
-------------------------------------
По правилам, как я понял, RewriteRulы просматривается сверху вниз, если Pattern - подходит меняем на Substitution с [Flag(s)]. В моем случае стоит [L] кот. прекращает последующие правила как я понимаю.
Но думаю что мой .htaccess работать не будет.
Помогите разобратся, когда и что надо писать.
Или подскажите что я не правильно понял по теме mod_rewrite. C регулярными у меня проблема.
Дома под виндой 98 работает только такое правило:А на серваке эксперементироватьне охото.
RewriteCond %{REMOTE_ADDR} ^127\.0\.0\.1$
RewriteRule ^.* - [F].
Другие не хотят.