mywebsite.com/project.php?id=123 следует перенаправить через .htaccess на mywebsite.com/123 - PullRequest
0 голосов
/ 20 ноября 2011

mywebsite.com / 123 должен отображать контент через .htaccess из mywebsite.com / project.php? Id = 123 - к сожалению, вчера я изменил .htaccess rewriterule по другой причине и теперь перенаправление не работает (оно переходит на нашу страницу с ошибкой 404). Вы видите, что я здесь сделал не так? Большое спасибо!

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([a-z0-9\-_]+)/?$ $1.php [NC,L]

1 Ответ

2 голосов
/ 20 ноября 2011

Изменение последней строки на это должно работать:

RewriteRule ^([a-z0-9\-_]+)/?$ project.php?id=$1 [NC,QSA,L]

если вы хотите, чтобы правило регулярных выражений не перехватывало URL-адреса, содержащие буквенные символы, используйте

RewriteRule ^([0-9\-_]+)/?$ project.php?id=$1 [NC,QSA,L]

И для вашего нового требования:

RewriteRule ^([0-9\-_]+)/?$ project.php?id=$1 [NC,QSA,L]
RewriteRule ^([a-z\-_]+)/?$ new.php?id=$1 [NC,QSA,L]
...