Помогите с mod rewrite

12
АП
На сайте с 08.06.2007
Offline
12
1498

Необходимо преобразовать урл вида:

к виду:

И еще просьба набросать ссылок, где популярно (не для профессиональных программистов) объясняется работа с mod rewrite.

Заранее благодарен!

[Удален]
#1

популярно - в википедии

в вашем случае будет примерно так


RewriteBase /
RewriteRule ^([^/]+)/([^/])+$ /test.php?sl=csearchalt&Nct=0&Nfirm=$2&whe=$1

Если нужна возможность передвать параметры, например

то в конце второй строчки через пробел напишите [QSA] (включая скобки)

АП
На сайте с 08.06.2007
Offline
12
#2

neolord, к сожалению, не работает. По адресу

открывается страница

И плюс к этому не показываются все картинки, расположенные в папке site.ru/images, и не работают стили из папки site.ru/css .

Shtogrin
На сайте с 02.11.2006
Offline
95
#3

Так именно эту страницу test.php вы и хотите открывать.

С картинками и стилями сложнее, при таком вызове у вас меняется базовый каталог и ресурсы ищутся относительно него. Выхода два: сделать все стили и картинки с абсолютными путями или добавить <base href="/">.

www.shtogrin.com (http://www.shtogrin.com/). Канцтовары (http://www.invit.com.ua/). 1С Бухгалтерия (http://account.kiev.ua/).
АП
На сайте с 08.06.2007
Offline
12
#4
Так именно эту страницу test.php вы и хотите открывать.

Shtogrin, Вы не так меня поняли, или я неправильно выразился.

Мне нужно, чтобы по адресу

открывалось то, что сейчас открывается по адресу

Pentium Prescott
На сайте с 23.10.2008
Offline
213
#5
Покупка и продажа криптовалют ( https://www.bestchange.ru/?p=1296834 )
АП
На сайте с 08.06.2007
Offline
12
#6
Pentium Prescott:
Заюзай этоОнлайн ModRewrite Generator

Pentium Prescott, хороший, вроде, сервис. В результате получил:

RewriteEngine On
RewriteRule ^([^/]*)/([^/]*)$ /test.php?sl=csearchalt&Nct=0&Nfirm=$2&whe=$1 [L]

Т.е. почти то же самое, что предложил neolord.

Но вот только не работает :(

W
На сайте с 06.09.2005
Offline
42
#7


Options FollowSymLinks
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)/(.*)$ test.php?sl=csearchalt&Nct=0&Nfirm=$2&whe=$1 [L]
webmasters -вебмастер с сайтов:http://www.ibrahimovfamil.narod.ru (http://www.ibrahimovfamil.narod.ru) http://www.allshops.h15.ru (http://www.allshops.h15.ru),http://www.forumall.h15.ru (http://www.forumall.h15.ru) http://www.zarabotka.hut1.ru (http://www.zarabotka.hut1.ru)
АП
На сайте с 08.06.2007
Offline
12
#8
webmasters:

Options FollowSymLinks
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)/(.*)$ test.php?sl=csearchalt&Nct=0&Nfirm=$2&whe=$1 [L]

Неа, не работает.

По адресу

открывается страница

Да, переменная firmname везде с Большой буквы. Может в этом проблема?

W
На сайте с 06.09.2005
Offline
42
#9

я проверал. у мня нормально работаеть. Отправите личке адрес ваш сайт. посмотрим.

[Удален]
#10
webmasters:

Options FollowSymLinks
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)/(.*)$ test.php?sl=csearchalt&Nct=0&Nfirm=$2&whe=$1 [L]

Так нельзя, ибо между слешами не должно быть других слешей.

А что там про большие буквы я не понял?

и вот это зачем? RewriteCond %{REQUEST_FILENAME} !-f

Все используют но мало кто понимает.

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий