Cette page n'a pas encore d'étiquettes.
Apportez votre aide…

Ceci est une ancienne révision du document !


Apache2 , Astuces et DynDNS

Cette documentation a pour but de donner un exemple de mise en place d'hôtes virtuels sur son PC dans le cadre d'un développeur de page internet, souhaitant séparer des sections : Administration , Privée , Publique ; en utilisant un nom de domaine gratuit du type DynDNS

Cette documentation ce base sur le principe que votre installation serveur 'web' est active et opérationnelle lamp

(concerne principalement les utilisateur de livebox/orange) Rendre un domaine mon_domaine.dnsalias.net accessible en local :

Éditer le fichier /etc/hosts comment_editer_un_fichier

127.0.0.1	localhost mon_domaine.dnsalias.net

Appliquer le nom de domaine à votre serveur (ServerName)

Éditer /etc/apache2/apache2.conf comment_editer_un_fichier

ServerName mon_domaine.dnsalias.net
ServerRoot "/etc/apache2"

On relance la configuration d'apache

sudo /etc/init.d/apache2 reload

Vous avez désormais accès à votre serveur via votre nom de domaine DynDNS

Nous allons rester dans l'esprit Ubuntu et se baser sur le principe d'un disque ou d'une partition monté au démarrage de votre ordinateur soit : /media/web ; pour ce qui est des sections 'privée' et 'publique'.(il sera ainsi accessible depuis le bureau)

Bien sur vous pouvez choisir un tout autre chemin

Administration

racine : /var/www

Cette "zone" doit être accessible en local et/ou dans le réseau local. Elle contient entre autre phpMyAdmin (le gestionnaire de base de données MySql)

L'erreur de beaucoup de personnes arrivant sur linux est de créer des pages internet avec des droits root ou de (carrément) mettre le répertoire /var/www avec les droits utilisateur. En contrepartie, beaucoup d'utilisateurs trouvent également peut pratique de devoir travailler dans un répertoire qu'ils n'ont pas choisit.

Nous allons donc rendre ce répertoire strictement local et interdit au "reste du monde"

Editer /etc/apache2/sites-available/default comment_editer_un_fichier

Dans la section <Directory /var/www/>…</Directory>, nous allons modifier 'ordre' des permissions, soit

Order allow,deny

en

Order deny,allow

puis on interdit tout le monde

Deny from all

Et on autorise localhost et éventuellement le réseau/pc

Allow from localhost
Allow from 192.168.1.

Privée

Racine : /media/web/private

Cet espace vous permet de créer des pages internet/applications web strictement privées

sudo mkdir /media/web/private

Nous rendons ce dossier accessible à l'utilisateur principal en écriture/lecture

sudo chown -R $USER:users /media/web/private

Éditer /etc/apache2/sites-available/default comment_editer_un_fichier

Après la section <Directory /var/www/>…</Directory>, nous allons créer un Alias et créer les droits de cet alias

	Alias /private /media/web/private
	<Directory /media/web/private>
		Options Indexes FollowSymLinks MultiViews
		AllowOverride All
		Order deny,allow
		Deny from all
		Allow from localhost
	</Directory>

Explications :

Alias /private /media/web/private = permet l'accès à cet espace depuis : http://nom_domaine.aliasdns.net/private

AllowOverride All = pour la gestion de l'urlRewriting (entre autre)

Deny from all = Interdire à tout le monde

Allow from localhost = autoriser en local

Pour que cette espace vous soit accessible depuis votre dossier principal /var/www –> http://nom_domaine.aliasdns.net, nous allons créer un lien symbolique.

sudo ln -s /media/web/private /var/www/private

On relance la configuration d'apache

sudo /etc/init.d/apache2 reload

Publique

Racine : /media/web/public Cette espace vous permet de mettre en ligne vos créations, donc accessible à tout le monde.

sudo mkdir /media/web/public

Nous rendons ce dossier accessible à l'utilisateur principal en écriture/lecture

sudo chown -R $USER:users /media/web/public

Éditer /etc/apache2/sites-available/default comment_editer_un_fichier

Après la section <Directory /var/www/>…</Directory>, nous allons créer un Alias et créer les droits de cet alias

	Alias /private /media/web/public
	<Directory /media/web/public>
		Options Indexes FollowSymLinks MultiViews
		AllowOverride All
		Order allow,deny
		Allow from all
	</Directory>

Explications :

Alias /public /media/web/public = permet l'accès à cet espace depuis : http://nom_domaine.aliasdns.net/public

AllowOverride All = pour la gestion de l' Url Rewriting (entre autre)

Allow from all = Autoriser à tout le monde

Pour que cette espace vous soit accessible depuis votre dossier principal /var/www –> http://nom_domaine.aliasdns.net, nous allons créer un lien symbolique.

sudo ln -s /media/web/public /var/www/public

On relance la configuration d'apache

sudo /etc/init.d/apache2 reload

Erreur 403

Afin d'éviter l'affichage d'erreur 403 à vos visiteurs (erreur d'url ou non) on va les rediriger automatiquement vers la section publique il suffit d'ajouter pour les sections :

<Directory /var/www/>

<Directory /media/web/private>

<Directory /media/web/public>

Une ligne de gestion d'erreur qui sera uniquement valable pour ces sections

Éditer default et insérer pour chaque section :

  <Directory /....>
    ErrorDocument 403 "http://nom_domaine.dnsalias.net/public"
    .....
  </Directory>

Vous disposez à présent d'un serveur 'web' vous permettant de travailler directement sur vos fichiers publiques et privés et ce dans un environnement séparé (pratique dans le cas d'un média amovible, pour emporter son travail) et vous pouvez donner des liens "complet" depuis votre nom de domaine gratuit sans devoir remplacer localhost par nom_domaine.aliasdns.net avant de coller vos liens. De pus vos visiteurs dans le cas d'une erreur d'url (ommission du répertoire /public) seront automatiquement redirigé vers celui-ci.


virtualhosts_avec_apache2_et_dyndns Contributeurs : McPeter

  • tutoriel/virtualhosts_avec_apache2_et_dyndns.1178748975.txt.gz
  • Dernière modification: Le 18/04/2011, 14:51
  • (modification externe)