Io corro Ubuntu 13.04 a 64 bit sul mio desktop, ho installato Apache2, MySQL e PHP eccApache2 virtualhost 403 vietato?
volevo avere il mio principale del web in /home/afflicto/public_html
invece di /var/www
. Quindi sono andato con questa guida:
http://www.maketecheasier.com/install-and-configure-apache-in-ubuntu/2011/03/09
(Ho fatto tutto da "configurare siti diversi") come mi piace la soluzione di più.
Ecco quello che ho fatto:
Installato Apache2, MySQL ecc ..
copiati /etc/apache2/sites-avaliable/default
a /etc/apache2/sites-available/afflicto
. Poi modificato esso, sembra ora simile al seguente:
/etc/apache2/sites-available/afflicto
<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>
ho fatto sudo a2dissite default && sudo a2ensite afflicto && sudo service apache2 restart
ho creato un index.php
e index.html
in /home/afflicto/public_html/test/
quando si accede a localhost/test
o localhost/test/index.html
ecc., Ottengo 403 errore proibito.
Cosa sto sbagliando? Grazie in anticipo.
aggiornamento 1
Ho impostato il proprietario della directory public_html a www-data
.
sudo chmod -R +x public_html && sudo chmod -R 777 public_html
Ancora lo stesso errore 403.
ecco l'output del log degli errori apache:
[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
corretta. Il processo di apache deve avere accesso a tutte le directory nel percorso. Inoltre, il processo di apache richiede che ogni directory abbia accesso mondiale o non servirà la directory al mondo (esterno). – dsh
sono rimasto bloccato fino a quando non ho applicato questo. Grazie! –
Non è affatto strano. Il tuo dichiarato 'DocumentRoot' è'/home/afflicto/public_html', quindi deve essere accessibile da Apache. – JakeGould