2016-07-26 9 views
3

Ich möchte eine weitere app_MYNAME.php im Webordner hinzufügen. Diese Datei ist fast identisch mit der app.php. Der einzige Unterschied ist der Eintrag:Symfony .htaccess Regel für app_MYNAME.php hinzufügen

$kernel = new AppKernel('MYKERNELNAME', false);

Ich will verschiedene Konfigurationsdateien mit diesen Verfahren laden.

Wenn ich im Browser eingeben:

domain.de/app_MYNAME.php/VALUE

alles in Ordnung ist.

Jetzt möchte ich die app_MYNAME.php verstecken. Das Ergebnis sollte wie folgt aussehen:

domain.de/VALUE

Der zweite Schritt das Umleiten ist. Wenn jemand Typ im Browser:

domain.de/MYNAME/VALUE

sollte es umgeleitet werden:

domain.de/app_MYNAME.php/VALUE

erhalte ich nur eine 404 oder eine misconfigured Nachricht.

Am Ende brauche ich 3 app_MYNAME.php Dateien (app_MYNAME1.php, app_MYNAME2.php, app_MYNAME3.php).

Ich hoffe, jemand könnte mir erklären, was in die .htaccess-Datei zu setzen.

Hier ist meine .htaccess-Datei:

DirectoryIndex app.php 

<IfModule mod_negotiation.c> 
    Options -MultiViews 
</IfModule> 

<IfModule mod_rewrite.c> 
    RewriteEngine On 

    RewriteCond %{REQUEST_URI}::$1 ^(/.+)/(.*)::\2$ 
    RewriteRule ^(.*) - [E=BASE:%1] 

    RewriteCond %{HTTP:Authorization} . 
    RewriteRule^- [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}] 

    RewriteCond %{ENV:REDIRECT_STATUS} ^$ 
    RewriteRule ^app\.php(?:/(.*)|$) %{ENV:BASE}/$1 [R=301,L] 

    RewriteCond %{REQUEST_FILENAME} -f 
    RewriteRule^- [L] 

    RewriteRule^%{ENV:BASE}/app.php [L] 
</IfModule> 

<IfModule !mod_rewrite.c> 
    <IfModule mod_alias.c> 
     RedirectMatch 302 ^/$ /app.php/ 
    </IfModule> 
</IfModule> 

Antwort

0

mit einer Konfiguration Versuchen Sie, die Datei in Ihrem .htaccess wie folgt aussieht:

<IfModule mod_rewrite.c> 
    RewriteEngine On 

    # ... Your other stuff 

    # RewriteRule ^(.*)$ /app.php [QSA,L] 
    RewriteRule ^(.*)$ /app_MYNAME.php [QSA,L] 
</IfModule> 

Stellen Sie außerdem sicher, dass Ihre nginx/Apache Die Hostdatei verweist auf das Webverzeichnis Ihres Symfony-Projekts.

+0

Hallo MeuhMeuh, , wenn ich in der RewriteRule stelle ich habe folgende Fehlermeldung bekommen: 'Interner Serverfehler Der Server hat einen internen Fehler oder eine Fehlkonfiguration festgestellt und konnte Ihre Anfrage nicht abschließen. Bitte wenden Sie sich an den Server-Administrator, [email protected] und informieren Sie ihn über den Zeitpunkt des Fehlers und alles, was Sie möglicherweise getan haben, dass der Fehler verursacht haben könnte. Weitere Informationen zu diesem Fehler sind möglicherweise im Fehlerprotokoll des Servers verfügbar. Der Apache verweist auf das Webverzeichnis. – WebCyclone

0

Try this:

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule ^(.*)$ app_MYNAME.php [QSA,L] 

Vielleicht alle app.php zu app_MYNAME.php in Ihrer .htaccess umwandeln konnte

+0

Funktioniert nicht, Ich möchte die 'app_MYNAME.php' in der URI ausblenden und ich möchte nicht, dass alle denselben Namen haben. – WebCyclone