Ich habe CentOS 6.1 Server und ich habe Apache 2.2.15 installiert. Jetzt, wenn ich versuche, von einem anderen PC (Windows 7) aus IE (http: // / ( = centos ip)) darauf zuzugreifen, bekomme ich die "Sie haben keine Berechtigung, auf / auf diese zuzugreifen Server." Error. Ich habe sogar phpinfo.php Datei mit dem Inhalt von "" auf "var / www / html" erstellt und wenn ich versuche, mit "http: //*/phpinfo.php" im IE darauf zuzugreifen, bekomme ich keinen Fehler. Was soll ich machen? Meine httpd.conf für directory ist wie folgt:
%Vor% Bearbeiten Sie die Datei httpd.conf, die sich in /etc/httpd/conf/httpd.conf
befindet. Fügen Sie den folgenden Code hinzu.
Nach der Zeilennr. 555 (in meinem Fall). Suchen Sie nach den Dateiberechtigungen und starten Sie den Server neu.
%Vor% Jetzt wird es funktionieren. Sie stehen immer noch vor dem gleichen Problem, deaktivieren Sie seLinux
in /etc/selinux/config
change SELINUX=disabled
und starten Sie den Server wie oben beschrieben neu und versuchen Sie es.
Hoffe, das hilft
Überprüfen Sie die Dateiberechtigungen der Anweisung / var / www / html und der Anweisung ALLOW in Ihrem Apache conf
Stellen Sie sicher, dass alle Dateien vom Webserver lesbar sind und die allow-Anweisung wie
ist %Vor%Wenn Sie Dateien sehen können, dann überlegen Sie sich, ob die Direktive restriktiver sein soll
Prüfe, ob Apache läuft. service httpd restart
für den Neustart
Bei CentOS 6 wird SELinux aktiviert. Ändern Sie entweder die Richtlinie oder deaktivieren Sie sie, indem Sie /etc/sysconfig/selinux
setting SELINUX=disabled
bearbeiten. Starten Sie dann
Dann überprüfen Sie lokal (von Centos), ob Apache funktioniert.
Setzen Sie SELinux im Freigabemodus mit dem folgenden Befehl:
%Vor% Erzeuge index.html
oder index.php
Datei im Stammverzeichnis (in deinem Fall - /var/www/html
, wie @jabaldonedo erwähnt)
Klicken Sie mit der rechten Maustaste auf Ihren www-Ordner und klicken Sie auf Eigenschaften. Navigieren Sie zu Berechtigungen und ändern Sie alle zu lesen und zu schreiben, dann klicken Sie auf " Übernehmen Sie die Berechtigung für die beigefügten Dateien " und Sie sind fertig !! Vielleicht ist es zu spät, aber das wird definitiv einer anderen Person helfen
Wenn Sie SELinux im permissiven Modus (command setenforce 0
) setzen und es funktioniert (funktioniert für mich), können Sie restorecon ( sudo restorecon -Rv /var/www/html/
) ausführen, das den richtigen Kontext für die Dateien im Apache Verzeichnis festlegt, da setenforce temporal ist . Der Kontext für Apache ist httpd_sys_content_t
und Sie können es überprüfen, indem Sie den Befehl ls -Z /var/www/html/
ausführen, der etwas wie folgt ausgibt:
-rwxr-xr-x. root root system_u:object_r:httpd_sys_content_t:s0 index.html
Falls die Datei nicht den richtigen Kontext hat, sehen Sie etwa so aus:
drwxr-xr-x. root root unconfined_u:object_r:user_home_t:s0 tests
Ich hoffe, es kann Ihnen helfen.
PD: Entschuldigen Sie mein Englisch