RewriteRule не работает - PullRequest
       1

RewriteRule не работает

0 голосов
/ 16 мая 2011

Это содержимое моего файла .htaccess:

RewriteEngine on
RewriteRule ^upload$ upload.php
RewriteRule ^/(\d+)/?.*$ /view.php?id=$1 [L]

Первое правило успешно работает.Когда я перехожу на http://localhost/upload, он показывает страницу upload.php.

Второе правило, однако, нет.Когда я просматриваю: http://localhost/1234/some-string, я получаю ошибку 404.Он предназначен для показа этой страницы: http://localhost/view.php?id=1234.

Надеюсь, вы увидите, что я пытаюсь сделать с правилом, я хочу, чтобы последняя строка в конце URL-адреса была полностью проигнорирована, и беру1234 в качестве параметра для view.php.

Может кто-нибудь определить, почему это не работает?Я перепробовал все, что мог придумать, но безуспешно.Спасибо!

1 Ответ

1 голос
/ 16 мая 2011

будет пытаться найти каталог /1234/ и не сможет. измените / на -, и оно должно работать

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

...