Проблема с URL RewriteRule - PullRequest
       0

Проблема с URL RewriteRule

0 голосов
/ 09 марта 2012

Я использую это RewriteRule ^page/([0-9]+)/ page.php?id=$1, чтобы изменить URL http://example.com/page.php?id=00001 на http://example.com/page/00001/, хотя любые изображения или страницы CSS / JS / etc больше не корректно связаны.

EG: http://example.com/_img/image.jpg превращается в http://example.com/page/00001/_img/image.jpg

Можно ли изменить также весь каталог?Например, я попробовал это:

RewriteRule ^page/([0-9]+)/(.*?) $2

Но это не сработало.Спасибо за помощь!

РЕДАКТИРОВАТЬ:
Хорошо, похоже, это работает, но только один из них работает в зависимости от того, что является первым.

RewriteEngine on

RewriteRule ^page/([0-9]+)/(.*)$ $2
RewriteRule ^page/([0-9]+)/ page.php?id=$1

Этокак он игнорирует второй, так что http://example.com/page/00001/ теперь http://example.com/index.php?id=00001 вместо http://example.com/page.php?id=00001
Возможно ли для него учесть и второй?

Ответы [ 2 ]

0 голосов
/ 09 марта 2012

Mayby что-то вроде этого будет работать:

RewriteEngine On

RewriteRule ^page/([0-9]+)/(.+)$ $2
RewriteRule ^page/([0-9]+)/?$ /page.php?id=$1
0 голосов
/ 09 марта 2012

После многих попыток оказалось, что я ошибся.Это должно быть так:

RewriteEngine on

RewriteRule ^page/([0-9]+)/$ page.php?id=$1
RewriteRule ^page/([0-9]+)/(.*) $2

Это делает http://example.com/page/00001/ на самом деле ссылкой на http://example.com/page.php?id=00001, но все остальное - например, http://example.com/page/00001/_img/image.jpg использует реальный URL, который будет http://example.com/_img/image.jpg.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...