Mon premier serveur web en 15 minutes avec Apache
sous Linux en 6 étapes
La Neutralité du Net / Net Neutrality
Un article de Skhaen (article original) Vaste sujet, mais ô combien important ! Vous en avez (...)
Stoppons ACTA !
Les Mardis de Globenet (sept, oct, nov, déc 2011... et bientot janvier !)
Les Mardis de Globenet : Réunions (ouvertes) de travail et concertation.
Globenet 2012 : Air de Printemps !
Ce printemps 2012, voit éclore plein de belles pousses pour Globenet...
Mon premier serveur web en 15 minutes avec Apache
1) Installer Apache sous Linux
2) Retrouver Apache dans son système
3) Connaître les adresses de son ordinateur
4) Faire apparaître la page web par défaut d’Apache
5) Transformer cette page web en votre propre page web
6) Faire lire votre page web à tous vos amis à travers internet

+ 1 étape pour aller plus loin

Avertissement 1 : ce mini-guide ne s’adresse :
• ni aux informaticien-e-s de profession qui installent ou désinstallent des serveurs toute la semaine,
• ni aux passioné-e-s d’informatique qui font déjà ronfler un data-center dans leur garage.
• Il s’adresse à toutes celles et ceux qui utilisent Linux et qui aimeraient héberger leur page perso sur leur ordinateur, juste pour voir.

Avertissement 2 : On peut aussi installer Apache pour Windows, notamment en téléchargeant le pack easyPHP. La procédure est semblable à celle que l’on va décrire (menu démarrer puis executer pour ouvrir un terminal DOS) mais on ne connait pas le ’vocabulaire’ de DOS, désolés.

Place disponible nécessaire : un ordinateur fixe ou portable avec un disque dur de 4 Go et une mémoire vive de 256 Mo ( soit quasi tous les ordinateurs vendus aujourd’hui) convient très largement.

Connexion disponible nécesaire : n’importe quelle connexion ADSL ou même modem vous permet de faire lire votre première page web au monde entier (mais pas vos images car la connexion ADSL est asymétrique comme son nom l’indique).

1) Installer Apache :

Apache est le logiciel de serveur le plus répandu dans le monde. Il équipe les plus gros data center, mais il peut aussi bien équiper votre petit PC. Comment ?

Apache est un « logiciel libre » (licence Apache). Youpi !

a : Vous utilisez la distribution Debian du système d’exploitation GNU/Linux.
Là, en principe, Apache est installé de base. C’est notre cas.
Si Apache n’est pas installé de base :
Vous ouvrez un terminal ;
Vous vous mettez en position de super-utilisateur (en tapant « su » par exemple)
Vous mettez votre distribution à jour,
puis vous tapez :

apt-get install apache2

ou :

aptitude install apache2

b : Vous utilisez la distribution Ubuntu du système d’exploitation GNU/Linux.
Des bouts de Apache sont installés selon les versions.
Vous vous mettez en position de super utilisateur (su ou sudo)
vous mettez à jour.
Vous complètez avec Synaptic.
Vous pouvez aussi utiliser « apt-get » ou « aptitude » comme avec Debian.

c : vous utilisez la distribution Mandriva du système d’exploitation GNU/Linux.
Vous ouvrez une console
Vous vous mettez en position de superutilisateur (en tapant « su » par exemple)
Vous mettez à jour la base urpmi,
puis vous tapez :

urpmi apache

(du moins en principe, on n’a pas essayé)

2) Retrouver Apache dans votre système

Debian et Ubuntu  : vous ouvrez un terminal / une console et vous tapez :

locate apache

Mandriva  : vous ouvrez une console et vous tapez :

find apache

Vous voyez apparaître tous les répertoires de votre système où se trouvent des bouts de apache. Impressionnant, n’est ce pas ?
Si cela ne marche pas tout de suite, c’est que votre ordinateur n’a pas encore mis a jour sa propre base de données (database). Il faut alors taper au préalable :

updatedb

3) Connaître les adresses de votre ordinateur.

En tant que super-utilisateur, vous tapez :

ifconfig

(ifconfig signifie : i.p. adress configuration)

Et vous voyez apparaitre les 2 paragraphes suivants dans le terminal / la console
(ici, mon adresse machine (HardWare adress in english) est Hwaddr 00.06.4B.30.B0:F2)
(et mon adresse internet (internet adress in english) est inet adr : 172.128.0.95)

debianbox :/home/moi# ifconfig
eth0 Lien encap:Ethernet HWaddr 00:06:4B:30:B0:F2
inet adr:172.128.0.95 Bcast:172.128.0.255 Masque :
255.255.255.0
UP BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 lg file transmission:1000
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)

lo Lien encap:Boucle locale
inet adr:127.0.0.1 Masque:255.0.0.0
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:8 errors:0 dropped:0 overruns:0 frame:0
TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 lg file transmission:0
RX bytes:560 (560.0 b) TX bytes:560 (560.0 b)

4) Faire apparaître la page web par défaut
’servie’ par Apache :

Vous allez lancer votre navigateur web, et vous appelerez la Boucle locale (second paragraphe ci-dessus : lo Lien encap : Boucle locale )
mais tout le monde dit « localhost », le nom anglais.
Le « local host » est l’url / adresse ip que Apache donne à votre ordinateur en tant que serveur, quand il s’adresse à lui même.

Donc vous lancez Firefox-Iceweasel ou Konqueror, et vous tapez :
• soit le nom qu’Apache donne par défaut à votre serveur =
«  locahost  »
• soit l’adresse i.p qu’Apache attribue par défaut à votre serveur =
«  127.0.0.1  »

Et voilà, votre page web par défaut apparaît. Vous avez créé votre serveur en circuit fermé.
Dans la dernière version de Apache, elle indique simplement :
• It works !
Avant apache2, on avait droit à une page assez longue de style officiel ; qui s’ouvrait pour dire aux ordinateurs du monde entier : ceci est un serveur apache.

5) Transformer cette page html par défaut
en votre propre page html

5.1) Voir la page source de la page web de Apache (facultatif) :

Il y a forcément une fonctionnalité dans votre navigateur. Avec Firefox et en anglais, c’est dans l’onglet view , pagesource.

5.2) Ouvrir le bon fichier pour modifier la page HTML

On cherche un fichier qui finit par : index.html
Vous ouvrez à nouveau un terminale / console.
Vous tapez à nouveau, comme tout à l’heure :

locate apache

(Debian et Ubuntu) ou :

find apache

(Mandriva)

Et vous voyez à nouveau toute la liste des bouts de Apache. Le fichier « index » est tout à la fin :

/var/www/apache2-default/index.html

(le dossier /var est le dossier qui va enregistrer l’activité de votre ordinateur, notamment en tant que serveur)

5.3) Modifier la page HTML avec un éditeur de texte.

Il faut maintenant ouvrir cette page web avec un « éditeur de texte » pour la modifier.
Il y en a plusieurs, notamment le mythique Vim.
Comme on a l’environnement graphique GNOME, on va faire ici au plus simple, en utilisant Gedit,
Si on avait Mandriva et / ou KDE, on utiliserait KWrite de la même manière.

Ouvrir la page d’accueil d’Apache par défaut = nom de l’éditeur de texte + chemin et nom du fichier à modifier, puis « enter ».

gedit /var/www/apache2-default/index.html

En principe, l’éditeur de texte s’ouvre gentiment tout seul dans une petite fenêtre. On voit :

< html >< body >< h1 >It works !< /h1 >< /body >< /html >

Le texte de notre page par défaut apparaît en noir et les « balises html » (bonjour à elles) en couleur. On peut maintenant changer la phrase : « It works ! » par la phrase de notre choix.
(legal warning : pas tout à fait de notre choix bien sûr vu que on va aller sur internet et que déjà quelques lois interdisent de dire diverses choses, par exemple de faire de la « publicité » pour les explosifs, la drogue ou l’alcool).

Donc vous remplacez par ce que vous voulez de légal, par exemple par :

< html >< body >< h1 >Vive la grenadine !
< /h1 >< /body >< /html >

Puis vous enregistrez dans votre changement (par exemple dans notre cas en allant sur « fichier » puis « enregistrer » dans la fenètre de l’éditeur de texte)

5.4) Vérifier que la page d’accueil de notre future site a bien été modifiée.

On change de bureau / On ferme l’éditeur de texte et la console puis :
On ouvre à nouveau le navigateur.
On retape « localhost » ou « 127.0.0.1 » dans la barre d’adresse.
alors de 3 choses l’une :
• soit la page affiche maintenant « Vive la grenadine ! »
• soit la page affiche encore « It works ! » par ce que vous avez travaillé très vite, et il faut alors actualiser la page web (icône correspondante sur la barre des tâches de votre ordinateur), pour voir apparaître « Vive la grenadine ! »
• soit la page affiche toujours « It works ! » et on vous conseille d’appeler un-e ami-e pingouin parce que ce n’est pas normal.

6 : Faire lire votre page html à tous vos amis
à travers le réseau internet.

6.1 : connaître son adresse i.p. (publique).

Vous vous rappelez peut être que au paragraphe 3, quand vous avez tapé « ifconfig », une « inet adress » était apparue.
Mais si vous êtes derrière un routeur, une « box », etc, cette adresse et celle de votre serveur sur le réseau local, pas celle de votre serveur sur internet.
Heureusement, des gens sortis de nulle part ont créé le site : «  monip.org  ».
Vous vous connectez à leur site :
www.monip.org
Votre adresse i.p. (publique) s’affiche directement en gros sur votre écran.

6.2 Prévenir ses amis

a) vous utilisez une connexion bas débit par modem téléphonique.
Vous laissez bien votre ordinateur branché et connecté.
Vous appelez tous vos amis sur votre téléphone portable (votre ligne fixe est prise par internet) pour leur communiquer votre adresse i.p.
En tapant celle ci sur leurs ordinateurs, ils seront connectés par internet à votre serveur et verront votre page web.
Votre ordinateur héberge maintenant un SITE WEB. Hourra !

b) vous utilisez une connexion ADSL via une « box » ou un autre modem-routeur.
Vous laissez votre ordinateur branché et connecté.
Vous configurez votre box pour qu’elle laisse le monde extérieur accéder à votre ordinateur. La procédure dépend de la box, donc on ne peut pas vous en dire plus.
Vous appelez tous vos amis, et .... (comme en bas débit). Hourra aussi à la fin en principe.

7 : Faire lire votre page html à tout le monde

Là, on va un peu déchanter parce des intermédiaires commes les F.A.I. et les moteurs de recherche compliquent la situation.

D’abord, dès que vous vous déconnecterez, votre F.A.I. va profiter de votre absence pour attribuer l’adresse i.p. de votre ordinateur à un autre ordinateur.
Vous avez donc une « adresse i.p. dynamique » c’est à dire qu’elle change au gré de la gestion par votre F.A.I. de son « stock » d’adresses i.p.

Dans le même temps, les moteurs de recherche ne se fatiguent pas à référencer les sites web aux i.p. dynamiques.
Donc même si vous mettez des mots rares dans votre site, Google et les autres vont vous oublier.
En fait, comme votre adresse i.p. change tout le temps, même vos amis ne pourront plus vous retrouver.

Que faire face à tant d’injustices ? 3 solutions - dont aucune n’est satisfaisante, autant le dire tout de suite.

1) Vous vous résolvez à faire entrer votre page petite page web dans la gigantesque machine bureaucratique de l’ICANN, l’organisation régulée qui gère les noms de domaine du monde entier, et vous achetez un nom de domaine auprès d’un « registrar ».

2) Vous contactez votre F.A.I. pour qu’il affecte à votre serveur une adresse i.p. « fixe » ou « statique » = qui reste toujours la même comme un numéro de téléphone.
Attention, tous les F.A.I. ne le font pas. C’est aussi parfois payant.
Avoir une i.p. fixe a aussi 2 désavantages :
• votre ordinateur devient plus vulnéable aux attaques.
• vous perdez tout anonymat comme si le décret « Big Brother » de la LCEN était déjà publié.

3) Vous prenez une voie médiane en vous enregistrant auprès d’un intermédiaire qui a acheté des noms de domaine et qui redirigera votre i.p. dynamique vers ces noms via DNS ;
(vous sous louez un nom de domaine en fait).
Une explication sur le site de Ubuntu.fr
Dans la pratique, deux entreprises se partagent le marché :
dyndns et no-ip.com