Wie würde ich mich über eine mod_rewrite schaffen, die launch.php umleitet? I = / die / url / das / sie / wollen?
-
03-07-2019 - |
Frage
Also, wenn der Benutzer mydomain.com/dashboard , das Dokument der Server tatsächlich sie sendet, ist /launch.php?i=/dashboard .
Die einzige Einschränkung ist, dass ich Anfragen verlassen möchte für
- / Flags
- / people
- / Plakate
- / CSS
- / icons
- / images
- / Bibliotheken
- / Muster
allein, und sie sollten die aktuellen Ordner anfordern.
Wie würde ich eine solche mod_rewrite erstellen?
Lösung
Dies ist die .htaccess-Datei für den CakePHP Framework.
Bitte ersetzen Sie die index.php und? Url = Ihre Bedürfnisse anzupassen.
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]
</IfModule>
Das "! -D" Apache sagt vorhandenen Ordner und "! -F" folgen vorhandene Dateien zu folgen.
Alles andere wird durch index.php kanalisiert
Wie in einem Kommentar vorgeschlagen, müssen Sie sich bewusst sein, dass, wenn es nicht funktioniert könnte es sein, weil mod_rewrite nicht aktiviert ist, und Sie werden einen Fehler nicht erhalten, diese Tatsache besagt, werden Sie wahrscheinlich nur eine HTTP 404.