web-dev-qa-db-fra.com

Apache2: Interdit Vous n'avez pas la permission d'accéder à / dir / sur ce serveur

Je peux accéder à localhost mais pas aux sous-répertoires index.html

Mon default conf ressemble à:

<VirtualHost *:80>
ServerAdmin webmaster@localhost

DocumentRoot /var/www
<Directory />
    Options FollowSymLinks
    AllowOverride None
</Directory>
<Directory /var/www/*/>
    Allow from None
    Order allow,deny
</Directory>
<Directory /var/www/>
    Options Indexes FollowSymLinks MultiViews
    AllowOverride None
    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

Même après avoir autorisé read/edit/write à accéder au répertoire, son erreur Forbidden est affichée. J'ai essayé tous les moyens possibles dans les forums, n'a pas fonctionné. Tout le monde a une solution.

Entre ci-dessus, j'ai essayé quelque chose pour l'accès sub directory:

<Directory /var/www/*/>
    Allow from None
    Order allow,deny
</Directory>

S'il vous plaît me suggérer une solution possible. Merci!

16
Shobhit Sharma

Faisons en sorte que le vhost soit clair:

<VirtualHost *:80>
    ServerAdmin webmaster@localhost

    DocumentRoot /var/www
    <Directory />
        Options FollowSymLinks
        AllowOverride None
    </Directory>
    <Directory /var/www/>
        Options Indexes FollowSymLinks MultiViews
        AllowOverride None
        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>

Ensuite, assurez-vous de définir la bonne permission comme ceci:

Sudo adduser <username> www-data
Sudo chown -R www-data:www-data /var/www
Sudo chmod -R g+rw /var/www
15
Achu