Перенаправление root только через .htaccess с другими правилами - PullRequest
3 голосов
/ 01 сентября 2009

У меня установлена ​​ YOURLS , которая перенаправляет сгенерированные адреса в другой домен, однако корень не перенаправляет. Как я могу установить правило, которое взаимодействует с существующими правилами для достижения этого? Вот файл .htaccess в его нынешнем виде:

# BEGIN ShortURL
RewriteEngine On
#RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([0-9A-Za-z]+)/?$ yourls-go.php?id=$1 [L]
# END ShortURL

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule .* - [E=REMOTE_USER:%{HTTP:Authorization},L]
</IfModule>

У меня есть базовое понимание этих методов, однако я не знаю, как отдельные правила влияют друг на друга. Заранее спасибо за помощь.

Ответы [ 2 ]

0 голосов
/ 01 сентября 2009

Попробуйте это:

# BEGIN ShortURL
RewriteEngine On
#RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([0-9A-Za-z]+)/?$ yourls-go.php?id=$1 [L]

RewriteCond %{REQUEST_URI} ^/$
RewriteRule ^([0-9A-Za-z]*)/?$ yourls-go.php?id=$1 [L]
# END ShortURL

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule .* - [E=REMOTE_USER:%{HTTP:Authorization},L]
</IfModule>
0 голосов
/ 01 сентября 2009

Вероятно, будет достаточно, если вы замените квантификатор + (одно или несколько повторений) первого правила на квантификатор * (ноль или более повторений).

...