Нужна помощь с правилом mod_rewrite - PullRequest
0 голосов
/ 17 декабря 2010

Я использую PHP RouteMap и хочу очистить URL.

URL имеет вид:

http://localhost/subfolder/index.php?controller/method/arg1

Как мне конвертировать?это к:

http://localhost/subfolder/controller/method/arg1

Ответы [ 3 ]

0 голосов
/ 17 декабря 2010

Вы можете попробовать это в файле httpd.conf:

#start your engine
RewriteEngine on
#add www. for any url, not what you asked for, but kinda helpful SEO-wise
RewriteCond %{HTTP_HOST} ^mypage\.com
RewriteRule ^(.*)$ http://www.mypage.com$1
#rewrite stuff
RewriteRule ^/subfolder/(controller/method/arg1)/?$ /index.php?$1

Это должно работать. Я бы изменил последнюю строку, хотя:

RewriteRule ^/subfolder/(controller/method/arg1)/?$ /index.php?p=$1

Теперь перед перезапуском apache попробуйте проверить, в порядке ли файл конфигурации.

user$ apachectl configtest

И это все.

Надеюсь, это поможет.

Приветствия

0 голосов
/ 17 декабря 2010
RewriteRule ^products/([0-9][0-9])/$ /productinfo.php?prodID=$1 [R]
RewriteRule ^products/([0-9][0-9])$ /products/$1/ 

Несколько перенаправлений в одном и том же файле .htaccess можно применять последовательно, что и делает

0 голосов
/ 17 декабря 2010

еще не проверял, но я думаю, вы захотите следующее:

 RewriteRule ^/subfolder/controller/(method/.*)$ /subfolder/index.php?controller/$1
...