2012-01-11 13 views
10

Właśnie ustawiłem apache na mojej Fedorze 16. I nie mogę uruchomić moich vhostów!Błąd Apache 403, (13) Odmowa uprawnień: dostęp do/odmowa, Fedora 16

Choć localhost/phpmyadmin działa dobrze ..

mam to w moim httpd.conf

<Directory /home/renat/www> 
AllowOverride All 
Options +Indexes +FollowSymLinks 
Order allow,deny 
Allow from all 
</Directory> 

NameVirtualHost *:80 
<VirtualHost *:80> 
    ServerName fabbro.fm 
    DocumentRoot /home/renat/www/fabbro 
</VirtualHost> 

Wszystko jest w porządku z uprawnieniami TOO:

ls -l 
    drwxr-xr-x. 32 renat renat 4096 янв. 7 16:12 www 

i mam Błąd 403 podczas próby uzyskania dostępu do fabbro.fm error_log mówi:

[client 127.0.0.1] (13)Permission denied: access to/denied 

Co muszę zrobić?

Odpowiedz

24

Rozwiązałem ten problem! Apache nie mógł uzyskać dostępu do tych katalogów z powodu ustawień bezpieczeństwa SELinux. wszystko, co musiałem zrobić, to zastosowanie tego polecenia do katalogu w ścieżce do głównego dokumentu:

chcon -R -t httpd_sys_content_t 
+1

Otrzymuję ten błąd, gdy próbuję zastosować to w moim katalogu głównym. chcon: brakujący operand Spróbuj "chcon - help", aby uzyskać więcej informacji. –

+0

chcon -t httpd_sys_content_t. lub chcon -t httpd_sys_content_t/path/to/fileOrDirectory –

+1

Co robi ta linia? Dostałem "chcon: missing operand" po napisaniu go: – Gediminas

1

Linia:

[klient 127.0.0.1] (13) Permission denied: dostęp do/odmówiono

kojarzy mi się tam gdzieś jest błąd w konfiguracji - drugi VirtualHost na przykład, lub globalną definicję DocumentRoot.

Ta druga definicja w jakiś sposób ustawia DocumentRoot na katalog główny systemu systemu . Apache ma rację, zaprzeczając temu.

Musisz znaleźć definicję, która to powoduje i usunąć.

+0

Cóż, nie sądzę, możesz wyglądać jak plz? [link] (http://pastebin.com/Ck1pEtst) – mennanov

+0

@mennanov dziwne, to wygląda dobrze. Czy masz jakieś pliki .htaccess z regułami Aliasu czy coś podobnego? –

+0

.htaccess nie, ale plik conf.d/phpmyadmin.conf ma operatory aliasów, ale nie sądzę, że jest to problem. – mennanov

2

miałem SELinux problem. Najpierw spróbowałem chcon -t httpd_sys_content_t, ale to nie naprawiło. Potem zrobiłem setsebool -P httpd_read_user_content 1 i zadziałało. Nie wiem, czy pierwsze polecenie było konieczne, czy tylko drugie.

1

Musiałem uruchomić następujące czynności, aby działało. Wspomniane wcześniej chcon i setsebool nie pomogły.

firewall-cmd --add-service = http

Jest na zwolnieniu Fedory 20 (heisenbug), btw.

Powiązane problemy