.htaccess RewriteBase nicht funktioniert

Ich bin mit einem .htaccess zu entfernen index.php meiner CodeIgniter Projekt. Ich hatte es ordnungsgemäß in localhost, aber versagt bei meinem hosting. Die Struktur meines hosting-zeigt mir wie diese:

/
-- domains
---- mydomain.com
------ public_html
-------- .htaccess
-------- (the rest of my CI site)

In meinem localhost .htaccess war so:

RewriteEngine on
RewriteBase /myCIfolder/
RewriteCond $1 !^(index\.php|resources|robots\.txt)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L,QSA]

Was ich versucht habe:

RewriteBase /
RewriteBase /domains/
RewriteBase /domains/mydomain.com/
RewriteBase /domains/mydomain.com/public_html/
RewriteBase /mydomain.com/
RewriteBase /mydomain.com/public_html/
RewriteBase /public_html/

Aber ich konnte nicht damit es funktioniert. Ich habe gebeten, meine host-provider, und Sie sagten, MOD_REWRITE bereits aktiviert.

Jede Idee ist sehr willkommen.


BEARBEITEN 1

Meine index-Seite (mydomain.con -- Haupt-controller, index-Funktion) ist ordnungsgemäß geladen,aber alle anderen controller ausfällt.

Mit

RewriteBase /

Zeigt es mir die Fehlermeldung:

No input file specified.

Andere RewriteBase zeigt:

Internal Server Error

Der server hat einen internen Fehler oder eine falsche Konfiguration und konnte Ihre Anfrage abzuschließen.

Bitte Kontaktieren Sie den server-administrator, [email protected] und informieren Sie über die Zeit der Fehler aufgetreten ist, und alles, was Sie getan haben kann den Fehler verursacht hat.

Mehr Informationen über diesen Fehler kann in der server-Fehlerprotokoll.

Zusätzlich einen 500 Internal Server Error Fehler aufgetreten beim Versuch, eine ErrorDocument-Anweisung verwenden, um die Anfrage zu behandeln.

Apache/2 Server at mydomain.com Port 80

  • Was genau meinst du mit "funktioniert nicht"? Gibt es eine Fehlermeldung, die Sie erhalten, die Sie veröffentlichen können (und was tut der apache produzieren)? Wenn public_html ist das document root und die Datei index.php gefunden wird in diesem Verzeichnis sollte es mit RewriteBase /, denn dies ist, was eingegeben wird zwischen den url zu Ihrem root-Verzeichnis und das Ergebnis RewriteRule. Die %{REQUEST_FILENAME ... sagt die Regel nur zu verarbeiten was ist nicht eine Datei oder ein Verzeichnis, das sollte ok sein, da Sie möchten, um eine Anfrage an den front controller index.php, richtig?
  • Ja. Ich aktualisiert meine Frage. RewriteBase / zeigt mir "No input file specified." angezeigt nur. Und danke für die Klärung, dass für mich.
InformationsquelleAutor Cassandra | 2015-08-22
Schreibe einen Kommentar