2 votes

Apache2 + répertoire statique PHP

J'ai installé Apache2 et PHP5. Mon DocumentRoot est /var/www/. Tous les sites .php y .html Les fichiers sont servis sous forme / et ses répertoires enfants. Cependant, lorsque je demande, disons, .png images que je reçois Forbidden avis.

J'aimerais envoyer un message spécifique /static/ pour le contenu statique.

Comment dois-je modifier les fichiers de configuration d'Apache pour pouvoir afficher du contenu statique à partir de /static/ ?

3voto

pQd Points 29251

Je ne suis pas sûr de comprendre le problème, mais vous pouvez le faire :

si vous voulez servir des fichiers statiques ne provenant pas de /var/www/static utilisez :

Alias /static/ /somewhere/somewhere/dir/

si votre répertoire statique se trouve déjà dans /var/www/static et que vous obtenez une erreur interdite, assurez-vous que ces fichiers sont lisibles par l'utilisateur sous lequel Apache fonctionne :

chown www-data:www-data -R /var/www/static

devrait résoudre le problème de lisibilité. Selon la distribution, le nom d'utilisateur peut différer. Vérifiez-le en exécutant ps faux|grep apache

0voto

kolypto Points 10468

Apache permet de spécifier les paramètres de php.ini sur une base par répertoire, donc vous devriez pouvoir désactiver php pour les répertoires des utilisateurs avec quelque chose comme ceci dans votre fichier httpd.conf :

<Directory /home/\*/public\_html>
php\_admin\_flag engine off
</Directory>

Vous pouvez également les définir dans ".htaccess".

0voto

Marcin Points 2241

Pour que le contenu d'un répertoire du système de fichiers puisse être utilisé par le Web, il faut avoir un fichier Directory qui l'encapsule, et les fichiers doivent être accessibles par l'utilisateur sous lequel votre serveur Web s'exécute. La plupart des installations par défaut ont un Directory et tout le contenu en dépend (par exemple, /var/www/).

Ce n'est pas obligatoire, vous pouvez avoir du contenu servi à partir de dessous d'autres annuaires, tant que vous avez un autre Directory section définie pour lui. Vous pouvez prendre plusieurs répertoires de ce type et les faire ressembler à un seul arbre heureux avec une section Alias directive.

Vous pouvez également interdire l'accès à certaines parties d'une arborescence qui peut être servie par le Web, par exemple pour empêcher l'inclusion de fichiers contenant des chaînes de connexion à la base de données, des mots de passe, des noms d'utilisateur, etc.

Les mêmes règles s'appliquent aux scripts, juste avec ScriptAlias directive.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X