Apache URL переписать проблему - PullRequest
0 голосов
/ 25 марта 2010

запросов -----> должны быть записаны на новый URL

/ institute / dps -----> /institute.php?slug=dps
/ institute / abc -----> /institute.php?slug=abc
/ institute / 123 -----> /institute.php?slug=123

Я использую следующее правило в .htaccess
RewriteRule ^ institute /(.*)$ /institute.php?slug=$1

Однако, это не работает. выполнение страницы insitute.php get, но строка запроса всегда пуста.

Есть предложения?

Ответы [ 2 ]

1 голос
/ 25 марта 2010

Это должно сработать ... Если вы попробуете

RewriteRule ^institute/(.*)$ /institute.php?slug=$1 [R]

он должен перенаправить формально, и вы увидите новый URI

Если у вас нет [R], он выдаст правильный запрос, но в строке запроса вы не увидите ?slug=, но будет установлено $_REQUEST['slug'].

0 голосов
/ 08 июля 2010

Включили ли вы перезапись в файле .htaccess? (перед вашим RewriteRule)

RewriteEngine On

Если это так - позволяет ли ваша конфигурация apache использовать файл .htaccess? (ищите строку)

AllowOverride None

внутри вас httpd.conf это ДОЛЖНО быть

AllowOverride All

Наконец, убедитесь, что модуль перезаписи URL включен в httpd.conf (он может быть закомментирован)

LoadModule rewrite_module modules / mod_rewrite.so

...