2016-07-26 13 views
1

Lets denken, dass ich einen solchen Code in .htaccess haben:definieren Variable für das Verzeichnis in .htaccess und verwenden Sie es

RewriteRule ^admin/registration/?$ admin/qeyd.php [NC,L] 
RewriteRule ^admin/login/?$ admin/login.php [NC,L] 
RewriteRule ^admin/profile/?$ admin/profile.php [NC,L] 

Aber ich möchte eine Variable für „admin“ definieren und es so schreiben: admin_directory_variable = custom_name

RewriteRule ^custom_name/registration/?$ admin/qeyd.php [NC,L] 
RewriteRule ^custom_name/login/?$ admin/login.php [NC,L] 
RewriteRule ^custom_name/profile/?$ admin/profile.php [NC,L] 

Wie kann ich das tun?

+0

Variablen können in vielerlei Hinsicht verwendet werden. Was ist der Anwendungsfall der Verwendung einer Variablen? Willst du einfach den 'admin' Pfad mehrmals vermeiden? – anubhava

+0

Ja, ich möchte vermeiden, Admin-Pfad mehrmals zu verwenden –

+0

Sie können tatsächlich vermeiden, 'admin /' zu schreiben, indem Sie alle 3 Regeln in 'admin /' Verzeichnis platzieren. – anubhava

Antwort

2

admin/.htaccess Datei erstellen und verwenden Sie diese Regeln:

RewriteEngine On 
RewriteBase /admin/ 

RewriteRule ^registration/?$ qeyd.php [NC,L] 
RewriteRule ^(login|profile)/?$ $1.php [NC,L] 
+1

Danke. Das ist eine gute Idee :) –

0

Apache 2.4 hat das Schlüsselwort definieren, die Sie wie folgt verwenden:

Define name value 

und verwenden Sie wie folgt aus:

DocumentRoot ${name} 

Leider kann es nicht in .htaccess-Dateien verwendet werden. Siehe Apache 2.4 documentation