Wie .htaccess für Kohana richtig einzurichten, so dass es keine hässlichen „index.php /“ in der URL?
Frage
Nach 2 Stunden jetzt konnte ich es nicht richtig machen.
Die Installation Kohana ist direkt unter meiner Domain, also " http://something.org/ "
Statt http://something.org/index.php/welcomde/index ich möchte URLs haben, wie http://something.org/welcome/index
Meine .htaccess ist völlig durcheinander. Es ist eigentlich die Standard-example.htaccess, die mit dem Download kam. Es ist fast nutzlos. Auf der kohana Seite ist ein Tutorial „wie der index.php entfernen“. Es ist wirklich auch nutzlos, da es nicht einmal wird darüber sprechen, wie es zu entfernen. Völlig verwirrend.
Bitte, kann jemand seine Arbeits .htaccess für eine Standard-kohana Installation zur Verfügung stellen?
Lösung
Meine .htaccess sieht aus wie das Beispiel.
RewriteEngine On
RewriteBase /
RewriteRule ^(application|modules|system) - [F,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* index.php/$0 [PT,L]
Aber Sie müssen auch die ändern config.php -Datei:
$config['index_page'] = '';
Andere Tipps
Dies ist unsere .htaccess-Datei gerade jetzt, und es scheint zu funktionieren.
RewriteEngine On
# Allow any files or directories that exist to be displayed directly
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
# Rewrite all other URLs to index.php/URL
RewriteRule .* index.php/$0 [PT,L]
Beachten Sie, dass wir unsere Anwendungen, Systeme und Module Verzeichnisse alle außerhalb des Web-Root haben.
Bei einigen Wirten, ich denke specficially wenn PHP im CGI-Modus ausgeführt wird, müssen Sie ändern
RewriteRule ^(.*)$ index.php/$1 [L]
RewriteRule ^(.*)$ index.php?/$1 [L]
in Ihrer .htaccess. Also im Grunde können Sie verwenden die kohana empfohlen Setup , einfach index.php/$1
mit index.php?/$1
ersetzen
Versuchen Sie, diese mod_rewrite Regel:
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule !^index\.php index.php%{REQUEST_URI} [L]
Für diejenigen, die „verbotene Fehler“ 403 auf OSX mit Standard erhalten .htaccess sicher sein, als die erste Zeile in .htaccess hinzufügen
Optionen + FollowSymLinks
Kohana 3.2 hat eine andere Konvention. Wenn Sie in Kohana_URL aussehen werden Sie die folgende Funktion Signatur finden:
public static function site($uri = '', $protocol = NULL, $index = TRUE)
Dabei steht $ index ist standardmäßig auf TRUE. ein $ Index FALSE Durch die Übergabe finden Sie die index.php Referenz entfernen.