Справка по перезаписи URL - PullRequest
0 голосов
/ 02 ноября 2009

Я пытаюсь выучить регулярное выражение и перезапись URL в PHP. Как я могу создать файл .htaccess, который будет перезаписывать (не перенаправлять) любой URL-адрес на index.php?q={url}?

Например:

http://www.example.com/baloon

до

http://www.example.com/index.php?q=baloon

Я пытался:

RewriteEngine On
RewriteRule ^$ index.php?q=$1 [R]

... но это не работает. Что я делаю не так?

Спасибо.

1 Ответ

3 голосов
/ 02 ноября 2009

Перезапись ЛЮБОГО URL в index.php? Q = $ 1 приведет к внутренней ошибке сервера, поскольку это создаст бесконечный цикл; вместо этого сделайте что-то вроде этого:

RewriteEngine on
RewriteCond %{REQUEST_URI} !^/index\.php
RewriteRule ^(.*)$ index.php?q=$1 [L]
...