Ich habe ein Website-Projekt auf meinem Mac-Buch pro Leopard, und ich verwende in Apache2 und PHP gebaut. Ich habe meine Konfigurationen sowohl in httpd.conf als auch in user.conf vorgenommen, um htaccess zu verwenden. Änderungen wie:
%Vor%Das Problem ist, wenn ich eine Website wie öffnen möchte localhost / ~ username / site / site / index.php / welcome, index.php führt einige Operationen aus und findet den richtigen Controller und die richtige Seite.
Aber wenn ich versuche, eine Site wie site / welcome apache einzugeben, bekomme ich folgenden Fehler:
Nicht gefunden
Die angeforderte URL Benutzer / Benutzername / Sites / site / index.php / welcome wurde auf diesem Server nicht gefunden.
Das Problem ist, Apache bekommt das wie es ist in der Tat eine Datei und die Fehlermeldung gibt es in einem Dateisystem Weg, aber diese Anfrage muss stattdessen zu index.php abgerufen werden.
meine .htaccess-Datei sieht so aus
%Vor%Was mich stört, dass diese Konfiguration sowohl unter Linux als auch unter Windows funktioniert, funktioniert aber nicht unter Mac. Ich fühle mich verloren:)
Stellen Sie unter Mac OSX Mountain Lion sicher, dass AllowOverride
im Verzeichnis /
All
gesetzt ist
%Vor%
und Stammverzeichnis Ihres Dokumentstammpfads:
%Vor% stellen Sie auch sicher, dass FollowSymLinks
in Options
enthalten ist.
Wenn Ihre "index.php-less pretty URL" nicht auf Ihrem DocumentRoot ist, dann fügen Sie das folgende RewriteBase-Verzeichnis in Ihrer .htaccess-Datei hinzu, wo Ihre index.php existiert, wie im folgenden Beispiel:
%Vor% Wenn Sie den .htaccess
-Dateinamen in einen anderen Namen wie .acl
oder htaccess.txt
ändern möchten, entfernen Sie die Kommentarzeichen in der folgenden Zeile Ihrer httpd.conf
und ändern Sie .htaccess
in AccessFileName
direction in extra/httpd-default.conf
file auf alles, was Sie möchten. Wenn Sie beispielsweise .htaccess
file in htaccess.txt
ändern möchten, ändern Sie sie in:
speichere sie, starte deinen Apache-Webserver auf OSX Mountain Lion neu und hoffe, dass es dir gut geht. Hoffe, das hilft.
Sie müssen Ihrer .htaccess-Datei die folgende Zeile hinzufügen:
%Vor%Ich hatte gerade das gleiche Problem, aber die obigen Lösungen funktionierten nicht für mich,
Das Entfernen des Schrägstrichs von Anfang an hat den Trick vollbracht (ich schätze, weil mein Browser bereits unter dem richtigen Benutzer läuft).
So RewriteRule ^ Register /register.php
Wurde RewriteRule ^ Registrieren Sie register.php
Das hat mich verrückt gemacht! BTW Ich führe Xampp (Apache 2) auf Mac OS 10.8.
Wenn ich eine .htaccess in / Library / WebServer / Documents platziere und öffne "localhost /"; um es zu testen, funktioniert das wie erwartet. Es funktioniert einfach nicht in "~ / Sites".
Tags und Links php macos apache .htaccess mod-rewrite