2013-07-14 39 views
37

Masaüstümdeki ubuntu 13.04 64bit koşuyorum, Apache2, MySQL ve PHP yüklü vbApache2 virtualhost 403 yasaklandı mı?

Ben /home/afflicto/public_html yerine /var/www benim web kökü olmasını istedik

. Bu nedenle bu kılavuz ile birlikte gittim:
http://www.maketecheasier.com/install-and-configure-apache-in-ubuntu/2011/03/09
(Ben herşeyi "farklı sitelerin yapılandırılması") çözümden daha çok beğendim.

İşte ne yaptım: Yüklü
Apache2, MySQL ..
/etc/apache2/sites-available/afflicto için /etc/apache2/sites-avaliable/default vb kopyalandı. Sonra, şimdi görünüyor düzenlenmiş gibi aşağıdaki:

/etc/apache2/sites-available/

<VirtualHost *:80> 
ServerAdmin [email protected] 

DocumentRoot /home/afflicto/public_html 
<Directory /> 
    Options FollowSymLinks 
    AllowOverride None 
</Directory> 
<Directory /home/afflicto/public_html/> 
    Options Indexes FollowSymLinks MultiViews 
    AllowOverride All 
    Order allow,deny 
    allow from all 
</Directory> 

ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ 
<Directory "/usr/lib/cgi-bin"> 
    AllowOverride None 
    Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch 
    Order allow,deny 
    Allow from all 
</Directory> 

ErrorLog ${APACHE_LOG_DIR}/error.log 

# Possible values include: debug, info, notice, warn, error, crit, 
# alert, emerg. 
LogLevel warn 

CustomLog ${APACHE_LOG_DIR}/access.log combined 
</VirtualHost> 
Ben

sudo a2dissite default && sudo a2ensite afflicto && sudo service apache2 restart Ben index.php ve index.html oluşturulan yaptılar

afflicto /home/afflicto/public_html/test/
yılında , localhost/test veya localhost/test/index.html vb. Erişirken, 403 yasak hatası alıyorum.

Neyi yanlış yapıyorum? şimdiden teşekkürler.

Ben www-data için public_html dizininin sahibini belirledik 1
güncelleme.
Ayrıca sudo chmod -R +x public_html && sudo chmod -R 777 public_html
Yine aynı 403 hatası.

İşte apache hata günlüğü çıktısı var:

[Sun Jul 14 06:10:32 2013] [error] [client 127.0.0.1] (13)Permission denied: access to/denied 

[Sun Jul 14 06:10:32 2013] [error] [client 127.0.0.1] (13)Permission denied: access to /favicon.ico denied 

cevap

19

Ben de sadece /home/afflicto/public_html aynı zamanda /home/afflicto/ dizinin chmod etmek varmış.

Garip.

+7

Doğru:

ileri bilgi için bu sayfaya bakın. Apache işleminin yoldaki her dizine erişimi olmalıdır. Ek olarak, apache işlemi, her dizinin dünya erişimine sahip olmasını veya dizinin (dışarıdaki) dünyaya hizmet etmemesini gerektirir. – dsh

+0

Bunu uygulayana kadar sıkışmıştım. Teşekkürler! –

+2

Hiç de garip değil. Belirtilen 'DocumentRoot','/home/afflicto/public_html', yani Apache tarafından erişilebilir olması gerekiyor. – JakeGould

92

Bu sorunla karşı karşıya kaldım. Ama ev dizinimin grubunu www-data olarak değiştirme fikrini beğenmedim. Bu sorun, virtualHost için yapılandırma dosyasını değiştirerek kolayca çözülebilir. Basitçe bu

<Directory "your directory here"> 
    Order allow,deny 
    Allow from all 
    Require all granted 
</Directory> 

Require all granted sanırım yeni bir özelliktir içerecek şekilde dizin etiketi yapılandırmak; denied varsayılan değerine sahip. http://httpd.apache.org/docs/current/mod/core.html#directory

+1

Bu benim için düzeltildi! Teşekkürler – STW

+3

Görünüşte Sipariş ve İzin 2.4 için gerekli değildir? –

+7

Bu "Tüm verilen" gerektirir altındır. Çok teşekkürler! –