Apache Virtual Hosts et sous-domaines

J'essaie de créer un sous-domaine pour un projet sur lequel je travaille, projectx.cairocubicles.com , cette URL indique un autre server que celui qui héberge www.cairocubicles.com . Le server auquel le sous-domaine pointe a apache installé avec l'hôte virtuel suivant:

<VirtualHost *:80> # Admin email, Server Name (domain name) and any aliases ServerAdmin webmaster@cairocubicles.com ServerName www.project1.cairocubicles.com # Index file and Document Root (where the public files are located) DirectoryIndex index.html index.php DocumentRoot /home/project1/web/public <Directory /home/project1/web/public> Options Indexes FollowSymLinks AllowOverride All AcceptPathInfo On Order allow,deny Allow from all </Directory> # Custom log file locations LogLevel warn ErrorLog /home/project1/web/log/error.log CustomLog /home/project1/web/log/access.log combined </VirtualHost> 

Mais maintenant, lors de la navigation sur project1.cairocubicles.com, j'ai un site Web différent (un autre site Web dans les lists d'hôtes virtuels). J'ai également essayé de changer ServerName www.project1.cairocubicles.com vers ServerName project1.cairocubicles.com mais j'ai eu une erreur 403 Forbidden. Des indices?

Merci.

5 Solutions collect form web for “Apache Virtual Hosts et sous-domaines”

Juste un coup rapide dans le noir, mais cela peut être un problème SELinux. Lorsque vous vous rendez sur le site que vous avez configuré en nom de server, est-ce que tout afficher dans les journaux spécifiques au site? Est-ce que quelque chose se présente dans /var/log/http/error.log?

– Assurez-vous d'effectuer un redémarrage ou recharger avec apache2 / httpd après TOUTES les modifications dans config

– Assurez-vous que / home / project1 / web / public existe et que l'autorisation est 664 (effectuez ceci récursivement avec -R)

– Assurez-vous que le propriétaire et le groupe des files sont apache2 / httpd (selon distro), généralement identifiant d'user 33

– Assurez-vous que l'adresse IP projet1.cairocubicles.com indique que c'est correct

– J'évite généralement le www. sous-domaine avec un sous-domaine existant (pas pour des raisons techniques, il semble désordonné)

-Pour tester, créez un file appelé phpinfo.php et ne contient que le suivant

  <?php phpinfo(); ?> 

et chargez-le uniquement (alors http://project1.cairocubicles.com/phpinfo.php )

– Vous devez vous assurer que vous avez modifié la propriété et les informations de groupe sur les dossiers. Essayez la command suivante (en expansion sur le point 3 ci-dessus):

 sudo chown apache2 /home/project1/public -R 

et

 sudo chgrp apache2 /home/project1/public -R 

si les commands indiquent que l'user apache2 n'existe pas, remplacez-le par httpd. Si le process apache2 (démarré comme user apache2) ne peut pas lire / exécuter les files, des erreurs peuvent se produire (c.-à-d. 403 interdites).

Une autre façon est d'append votre user au groupe apache2. C'est un peu plus complexe à configurer correctement

Essayer:

  ServerName project1.cairocubicles.com
 ServerAlias ​​www.project1.cariocubicles.com

Veille à ce que l'user que Apache exécute comme ayant lu l'access à l'annuaire public / home / project1 / web / public

Si un domaine n'est pas répertorié comme ServerName ou ServerAlias, il sera chargé à partir du premier VirtualHost défini. C'est pourquoi, dans le premier cas, vous avez fini par voir le mauvais site Web.

Après avoir changé votre ServerName, vous avez probablement chargé le bon site Web, mais maintenant vous avez un problème avec les permissions ou le contenu. Vérifiez les journaux d'erreur, les journaux d'access, les permissions du système de files. Au-delà, une affiche précédente a mentionné SELinux comme un problème possible.

Donc, il a fonctionné maintenant quand j'ai donné le directory personnel dans / home / userx une permission o + x, est-ce sûr, pourquoi a-t-il besoin de l'autorisation d'exécution pour tout le monde?

Je devais m'assurer d'avoir modifié la propriété et les informations de groupe sur les dossiers, avec la command suivante: chown apache2 / home / project1 / public -R et chgrp apache2 / home / project1 / public -R si les commands disent que l'user apache2 n'existe pas, remplacez-le par httpd. C'est la raison pour laquelle il ne fonctionne pas dans le directory personnel (appartenant à votre user) et fonctionne dans le directory / var / www (appartenant à apache2). Je vous recommand de créer un lien symbolique dans / var / www / pointant vers votre directory personnel. C'est la chose standard à faire. (plus facile pour les autres de voir ce qui se passe)

  • Multi-sous-réseaux sur une seule interface dans EC2
  • Routage entre les sous-réseaux avec un routeur?
  • Plusieurs files VirtualHosts pour les sous-domaines dans apache2
  • Supprimer www à partir des sous-domaines d'Apache
  • sous-domaine d'un sous-domaine sur le server 11.10
  • Domaine et sous-domaine avec différents loggings MX
  • L'installation de sous-domaine ne fonctionne pas Apache 2.2.26 sur Amazon EC2
  • DNS ne résout pas pour * quelques * personnes / lieux
  • Est-il logique, en termes de performance, avoir plus d'un sous-réseau sur le même commutateur?
  • Pourquoi les sous-domaines ne fonctionnent-ils pas?
  • La redirection du sous-domaine Apache échoue
  • Les astuces du serveur de linux et windows, tels que ubuntu, centos, apache, nginx, debian et des sujets de rĂ©seau.