2009-08-31 6 views
3

J'ai une installation de YOURLS qui redirige les adresses générées vers un domaine différent, mais la racine ne redirige pas. Comment puis-je définir une règle qui coopère avec les règles existantes pour y parvenir? Voici le fichier .htaccess tel qu'il est:Redirection de la racine uniquement via .htaccess avec d'autres règles en place

# 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> 

J'ai une compréhension de base de ces méthodes, mais je ne sais pas comment des règles distinctes touchent les uns les autres. Merci d'avance pour votre aide.

Répondre

0

Il vous suffira probablement de remplacer le quantificateur + (une ou plusieurs répétitions) de votre première règle par le quantificateur * (zéro ou plusieurs répétitions).

+0

Merci pour la suggestion. Malheureusement, cela n'a pas fonctionné. –

0

Essayez ceci:

# 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

Cette solution conserve la fonctionnalité de raccourcissement d'URL, mais tenter d'accéder à la racine déclenche une boucle de redirection. –

Questions connexes