|
|
|
| Как убрать название переменной из урл? Если учесть, что она одна на страницу.
И не повлияет ли это на GET - массив? Можно ли будет продолжать доставать перменные так:
? | |
|
|
|
|
|
|
|
для: alexander95
(24.03.2011 в 19:46)
| | А что в переменной (строка, число)?
>И не повлияет ли это на GET - массив? Можно ли будет продолжать доставать перменные так:
Нет не повлияет, Web-сервер преобразует адрес в канонический перед вызовом, т.е. скрипт будет вызываться так же, как и без mod_rewrite, который создает только псевдоним страницы. | |
|
|
|
|
|
|
|
для: cheops
(24.03.2011 в 19:56)
| | сама переменная - строка, в ней - число.
но лучше сделать на оба случая, мне может еще пригодиться второй вариант. | |
|
|
|
|
|
|
|
для: alexander95
(24.03.2011 в 20:02)
| | Нужно больше подробностей, если не сложно приведите как выглядит типичная строка? Дело в том, что под универсальное выражение будут подходить все URL, под очень узкое - вообще ничего подходить не будет. Чтобы составить адекватное правило, хорошо бы поглядеть на строку запроса. | |
|
|
|
|
|
|
|
для: cheops
(24.03.2011 в 20:06)
| | >Дело в том, что под универсальное выражение будут подходить все URL
Кажется, это именно то что мне нужно, если я Вас правильно понял.
что есть | заменить на
www.site.ru/page=1 | www.site.ru/1
www.site.ru/show?id=1 | www.site.ru/show?1
Да, кстати, для убирания .php у меня уже написано. Вроде бы, там может применяться только одно правило, так? Может быть, тогда в одном сразу и .php и GET убрать? | |
|
|
|
|
|
|
|
для: alexander95
(24.03.2011 в 20:11)
| | Скорее всего вам придется пользоваться правилами вида
RewriteEngine on
RewriteBase /
RewriteRule ^page/([\d]+)$ /page.php?id=$1 [L]
RewriteRule ^show/([\d]+)$ /show.php?id=$1 [L]
|
Т.е. адреса будут вида
www.site.ru/show.php?id=1 => www.site.ru/show/1
www.site.ru/page.php?id=1 => www.site.ru/page/1 | |
|
|
|
|
|
|
|
для: cheops
(24.03.2011 в 20:21)
| | Хорошо было бы, только у меня не только две эти страницы могут быть:)
то есть что то вроде этого:
www.site.ru/{любое имя страницы}.php?{любое имя переменной}=... | |
|
|
|
|
|
|
|
для: alexander95
(24.03.2011 в 20:25)
| | Можно поступить следующим образом
RewriteEngine on
RewriteBase /
RewriteRule ^([a-z]+)/([\d]+)$ /$1.php?id=$2 [L]
|
| |
|
|
|
|
|
|
|
для: cheops
(24.03.2011 в 20:28)
| | RewriteEngine on
RewriteBase /
RewriteRule ^([a-z]+)/([\d]+)$ /$1.php?$2=$3 [L]
может, так? там же любое имя переменной также.. | |
|
|
|
|
|
|
|
для: alexander95
(24.03.2011 в 20:32)
| | Нет, у вас всего две скобки, следовательно может быть только $1 и $2, в качестве имени параметра скорее всего придется использовать одно и тоже имя. | |
|
|
|
|
|
|
|
для: cheops
(24.03.2011 в 20:34)
| | А, все, понял! Это я запутался, извиняюсь.
Спасибо большое. | |
|
|
|