web-dev-qa-db-fra.com

Comment autoriser www.example.com et example.com sur une instance EC2 Ubuntu sur AWS

J'ai une instance EC2 Ubuntu sur laquelle Apache2 est installé (avec php, mysql, mycrypt pour un projet Laravel). J'ai configuré les serveurs de noms corrects et www.example.com arrive en ligne. Cependant, example.com (sans www.) ne fonctionne pas.

Je sais que je dois changer quelque chose avec vhost, mais je ne sais pas comment le faire avec la version Debian d'Apache2 sur l'instance Ubuntu.

Quel fichier dois-je éditer pour faire ceci, et quelle édition dois-je faire?

2
user1072337

Cela dépend de la configuration de votre domaine. S'il se trouve dans le fichier /etc/Apache2/sites-enabled/000-default ou (example.com dans le même répertoire), éditez ce fichier. Sinon, ce sera dans le fichier /etc/Apache2/Apache2.conf.

Recherchez la directive ServerName domain.com et ajoutez cette ligne ci-dessous:

ServerAlias www.example.com

Cela fera en sorte que alias fonctionne également pour le même domaine. Pour que ces paramètres prennent effet, vous devrez redémarrer Apache2 en utilisant cette commande en tant que root:

$ service Apache2 restart

Je suggérerais également de placer le fichier .htaccess afin de rediriger réellement www.example.com vers example.com au lieu d'afficher les deux sites sous des domaines distincts. Ceci est également utile pour le référencement. Dans votre docroot, placez ceci dans .htaccess:

RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_Host} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
0
phoops