2017-09-14 1 views
0

J'essaie d'obtenir apache2 pour pointer vers une application basée sur PHP (mot de presse dans ce cas, mais la configuration doit être assez générique pour fonctionner avec n'importe quelle application php). et il affiche soit une page d'accès aux fichiers HTML de base ou des erreurs avec "Vous n'avez pas la permission". Je ne connais pas vraiment Apache et je ne connais pas PHP du tout. Voici mon fichier en cours de site_config tel qu'il est (avec rétractions remplacé par):Besoin d'aide avec mon fichier de configuration de site apache2

<VirtualHost *:80> 
     ServerAdmin <app_user>@localhost 
     ServerName amazonaws.com/<app_name> 
     ServerAlias *.amazonaws.com/<app_name> 
     DocumentRoot /home/<app_user>/<app_location>/staging/current 
     <Directory /home/<app_user>/<app_location>/staging/current > 
       AllowOverride All 
       Options -Indexes 
       Order allow,deny 
       Allow from all 
     </Directory> 
     LogLevel error 

     ErrorLog ${APACHE_LOG_DIR}/error.log 
</VirtualHost> 

Je voudrais aussi faire en sorte que vous pouvez avoir plusieurs sites sur la même case, mais je ne sais pas comment changer le VirtualHost arg *:80 pour tenir compte de cela, je reçois juste des charges d'ignorer les erreurs.

J'ai aussi la ligne suivante dans mon apache2.conf:

DirectoryIndex index.php index.html 

autorisations de dossier sont mis à 0755 pour tous les fichiers & dossiers dans le répertoire du projet

sortie apache2 -v:

Server version: Apache/2.4.7 (Ubuntu) 

Ps Je ne sais rien sur PHP et très peu sur Apache2 donc pour cela, parlez-moi comme un total noob.

+1

Quelle est la version d'apache? La syntaxe que vous utilisez pour certaines parties ('Order allow, deny [...] Allow from all') a changé et est obsolète depuis 2.4. – Chris

+1

ajouté la version à op, j'ai changé les lignes 'Order allow' à' Require all granted' et maintenant il affiche une erreur PHP wordpress, ce qui est une amélioration, alors merci. – Thermatix

+0

Vous ne modifiez pas la ligne ''. Vous créez d'autres configurations avec différents attributs ServerName. – Progrock

Répondre

0

Pour résoudre le premier problème que je devais changer les lignes suivantes:

Order allow,deny 
Allow from all 

à:

Require all granted 

ce finalement permis apache pour permettre aux utilisateurs d'accéder aux dossiers, la deuxième chose était ajouter un alias:

Alias /<app_name> "/home/<app_user>/<app_location>/staging/current" 

et il a commencé à fonctionner comme prévu, maintenant mon site config ressemble à:

Alias /<app_name>"/home/<app_user>/<app_name>/<app_environment>/current" 
<Directory "/<app_name>"/home/<app_user>/<app_name>/<app_environment>/current"> 
     AllowOverride All 
     Options -Indexes 
     Require all granted 
</Directory> 

<VirtualHost *:80> 
     DocumentRoot "/<app_name>"/home/<app_user>/<app_name>/<app_environment>/current" 
     ErrorLog "/var/log/apache2/<app_name>.error_log" 
     CustomLog "/var/log/apache2/<app_name>.access_log" combined 
</VirtualHost>