1 votes

sous-domaine d'un sous-domaine sur le serveur 11.10

J'ai un serveur qui héberge mondomaine.com. Puis j'ai un serveur qui héberge subdomain1.mydomain.com.

Sur le serveur subdomain1.mydomain.com, comment puis-je créer des sous-domaines ? Par exemple, je veux créer un sous-domaine2.sous-domaine1.mondomaine.com.

J'ai mon site subdomain1.mydomain.com dans /home/USER/public_html et il fonctionne parfaitement. Mais lorsque j'essaie de créer un sous-domaine2.subdomain1.mydomain.com, le navigateur indique "Server not found". J'ai essayé de nombreuses configurations dans mon /etc/hosts et /etc/apache2/sites-available/subdomain2.subdomain1.mydomain.com, sans succès.

Je peux avoir des instructions détaillées ? J'ai cherché partout et chaque endroit vous dit quelque chose de différent, sans succès.

Ubuntu Server 11.10 avec l'option Lamp Stack

3voto

Lukas Points 267

Configuration d'Apache

Ce dont vous avez besoin est la directive Apache VirtualHost. Voir le Documentation Apache et quelques Exemples .

Ce que vous voulez faire dans Ubuntu est de vous assurer que le port que vous voulez utiliser (généralement :80) est activé dans /etc/apache2/ports.conf comme ceci :

NameVirtualHost *:80
Listen 80

Ensuite, vous devrez créer un nouveau fichier de configuration dans /etc/apache2/sites-available. Je vous suggère de le nommer proj1.conf ou proj1.mydomain.conf.

Là, vous pouvez configurer le VirtualHost comme suit :

<VirtualHost *:80>
  ServerName proj1.subdomain.domain.com
  DocumentRoot /var/www/proj1
  ServerAdmin name@domain.com

  # Write a seperate log per Virtualhost
  CustomLog /var/log/apache2/proj1.subdomain.access_log combined
  ErrorLog /var/log/apache2/proj1.subdomain.error_log

  # Maybe you want to put some restrictions on the directory
  <Directory /var/www/proj1>
    Options -Indexes +FollowSymLinks + Includes
    AllowOverride All
    # Restrict Access to certain IP's
    Order Deny,Allow
    Deny from All
    Allow from 127.0.0.1 IP IP IP
    Satisfy ALL
  </Directory>
</VirtualHost>

Consultez le manuel Apache pour voir ce que vous pourriez faire avec la directive.

Pour activer ce site, liez-le à /etc/apache2/sites-enabled

ln -s /etc/apache2/sites-available/proj1.conf /etc/apache2/sites-enabled/proj1

Il ne vous reste plus qu'à vous assurer que votre configuration est valide, puis à redémarrer Apache :

apache2ctl configtest && /etc/init.d/apache2 restart

DNS

Si vous utilisez une machine virtuelle, le DNS est probablement fourni par votre hébergeur. Vous pouvez donc lui demander de configurer le DNS.

Naturellement, vous devrez configurer le sous-domaine dans votre DNS de manière à ce qu'il pointe vers ce serveur. Pour cela, vous pouvez créer un enregistrement A ou CNAME pour chaque sous-domaine et le faire pointer vers votre serveur.

Voici à quoi pourrait ressembler votre fichier de zone de liaison :

$TTL 2h

@       IN      SOA     dns1.example.com.      emailaddress.domain.com. (
                        2011120701  ; serial number YYMMDDNN
                        1h          ; Refresh
                        20m         ; Retry
                        2w          ; Expire
                        2h          ; Min TTL
            )

@               IN  NS      dns1.example.com. 
@               IN  NS      dns2.example.com. 

@               IN  MX      10 mx1.domain.com.
@               IN  MX      20 mx2.domain.com.
@               IN  A       999.999.999.999
subdomain       IN  A       666.666.666.666
proj1.subdomain IN  CNAME   subdomain
*.subdomain     IN  CNAME   subdomain

Évidemment, vous devrez remplacer domain.com par votre domaine, 999.999... et 666.666 par les bonnes adresses IP, changer les enregistrements NS et MX, etc.

Voir le Relier le manuel pour plus de détails.

À des fins de test, vous pouvez également modifier le fichier hosts sur votre ordinateur local. Ainsi, seul votre ordinateur résoudra le sous-domaine vers ce serveur, ce qui vous permettra de vérifier que tout fonctionne et de ne modifier le DNS que si c'est le cas.


Edit : Si vous souhaitez créer des "sous-sous-domaines" qui pointent vers le même répertoire que le sous-domaine, vous pouvez ajouter un ServerAlias à votre configuration Apache2, à côté du ServerName :

  ServerName subdomain.mydomain.ain
  ServerAlias proj.subdomain.mydomain.ain
  ServerAlias *.subdoamaind.mydomain.ain

La configuration du DNS serait la même que celle illustrée ci-dessus.

0voto

agnostic Points 21

Lukas a raison, mais traiter avec les Vhosts de cette façon peut être une véritable plaie.

Avez-vous essayé un logiciel d'administration web gratuit ? Même si nous sommes une équipe de développeurs au travail, nous utilisons Webmin ( http://www.webmin.com/ ) pour nos VHosts, les tâches Cron et la gestion de la configuration.

Vous pouvez également vous procurer une copie de CPanel &cie mais ces panneaux sont payants et ne vous apporteront généralement pas beaucoup plus que les panneaux gratuits basés sur le web.

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