Nous utilisons des cookies pour améliorer votre expérience.

MacBidouille

Apache - php - mySQL

Détails et utilisation de ce trio serveur web - langage - base de données


Redirection dynamique pour les IP non fixes    Nous avons maintenant un site WEB parfaitement fonctionnel. Mais pour que le site prenne tout son intêret, il est nécessaire qu'il soit accessible de tout le monde. Si votre connexion est basée sur une adresse IP fixe, pas de problème, vous pouvez donner cette adresse aux gens. Mais si vous êtes par exemple sur une ligne ADSL avec une IP dynamique, le mieux à faire est de passer par un service de redirection, qui fera pointer votre nom de domaine vers vers votre IP dynamique, en s'occupant tout seul de la mise à jour. Un tel service est proposé gratuitement par dyndns, et nous allons en voir le fonctionnement ici.
La première chose à faire est bien évidement d'aller sur le site de DynDNS.org, et de vous enregistrer via le lien Sign Up Now. Une fois ceci fait, il ne reste plus qu'à télécharger un client (gratuit) et le configurer. Le client DNSUpdate par exemple est très bon, et fonctionne sous Jaguar comme Panther, même si rien n'est indiqué pour Panther. Le lien pour télécharger ce client directement est le suivant. Il faut maintenant se faire un nom de domaine. Pour cela, rien de plus simple, il suffit de s'identifier sur le site, et de choisir le nom de domaine de son choix, parmi ceux qui sont encore disponibles. Le lien direct pour cette opération est le suivant. Vous pouvez alors maintenant choisir un nom, et son extension parmi la liste proposée. Pas la peine de toucher au reste. Il suffit juste de valider son choix par le bouton Add Host. Une fois ceci fait, on peut quitter le site DynDNS.org, et on peut alors lancer le client sur son Mac, afin de le paramétrer. Voici la fenêtre que l'on obtient :

il faut maintenant configurer ce client en ajoutant un utilisateur, en cliquant sur le bouton prévu pour en haut à gauche. Il suffit de renter dans les deux premiers champs le login et le password utilisés sur le site de dyndns.org. Attention à bien sélectionner le bon service dans le menu déroulant (troisième option) :

On peut alors activer l'utilisateur créé. Il reste maintenant une dernière chose à effectuer : rajouter un hôte (en fait votre nom de domaine). Pour cela, une fois l'utilisateur sélectionné, on clique sur le bouton "ajouter un hôte", et on rentre dans le premier champ le nom de domaine que l'on a choisi. Si vous êtes derrière un firewall, il faudra sélectionner comme interface "External". Pour plus de détails concernant les différentes interfaces, je vous invite à aller lire la doc de ce soft, disponible depuis le menu Aide.
Maintenant, les visiteurs peuvent accéder à votre site en utilisant l'URL suivante : http://blabla.dyndns.org si tel est votre nom de domaine. Attention, il n'y a pas de www à mettre devant le nom de domaine.
Attention cependant à un détail : si vous voulez voir le contenu de votre site depuis l'ordinateur qui l'héberge, l'URL à utiliser est http://localhost/.., et non pas celle avec votre nom de domaine. Cela ne marche pas pour l'ordi qui héberge le site. Par contre, si vous avez un réseau local avec plusieurs ordis, aucun problème pour aller sur le site depuis les autres ordis en passant par l'adresse de dynsdns.org.
6.2 : Comment héberger deux (ou plus ) sites sur un même ordinateur?
  Avec ce que nous venons de voir, il est possible d'avoir un site hébergé sur son ordinateur, et un nom de domaine pour ce site. Le dossier /Library/WebServer/Documents/ étant unique, on ne peut a priori avoir qu'un seul site à la fois sur son ordi. Mais en allant faire un tour dans le fichier de configuration d'Apache, il est possible de configurer son serveur pour avoir autant de sites que l'on souhaite.
Nous allons donc éditer le fichier de configuration d'Apache. Pour cela, comme pour l'activation du php, nous allons passer par le terminal et l'éditeur pico. La commande à taper est bien entendu encore la même, à savoir "sudo pico /etc/httpd/httpd.conf". La troisième partie du fichier de configuration se nomme "Section 3 : Virtual Hosts", et voici ce qu'on peut y lire :
### Section 3: Virtual Hosts
#
# VirtualHost: If you want to maintain multiple domains/hostnames on your
# machine you can setup VirtualHost containers for them. Most configurations
# use only name-based virtual hosts so the server doesn't need to worry about
# IP addresses. This is indicated by the asterisks in the directives below."

Voilà donc exactement ce qu'il nous faut. La première étape va être de supprimer le dièse devant la ligne NameVirtualHost *:80
l'étoile signifie que toutes les adresses IP peuvent être utilisées, le ":80" lui est là pour signifier que seul le port 80 sera utilisé. Pour plus d'informations concernant les ports, je vous propose la lecture des ces deux articles : Article 1 et Article 2.
Les lignes qui nous concernent plus particulièrement pour le moment sont les suivantes :
#<VirtualHost *:80>
#      ServerAdmin [email protected]
#      DocumentRoot /www/docs/dummy-host.example.com
#      ServerName dummy-host.example.com
#      ErrorLog logs/dummy-host.example.com-error_log
#      CustomLog logs/dummy-host.example.com-access_log common
#</VirtualHost>

Les lignes se complètent de la façon suivante :
ServerAdmin contient le mail de l'administrateur du serveur.
DocumentRoot contient le chemin du dossier racine du site.
ServerName contient le nom de ce site.
ErrorLog et CustomLog contiennent les chemins des fichiers log de ce site. Sans aucune indication pour ces deux derniers champs, les fichiers par défaut seront utilisés.
Ainsi, si vous avez deux sites, on peut configurer Apache de la façon suivante :
<VirtualHost *:80>
      ServerAdmin [email protected]
      DocumentRoot "/Library/WebServer/Documents/DossierSite1/"
      ServerName gotchi_site1.dyndns.org
</VirtualHost>
<VirtualHost *:80>
      ServerAdmin [email protected]
      DocumentRoot "/Library/WebServer/Documents/DossierSite2/"
      ServerName gotchi_site2.dyndns.org
</VirtualHost>

Attention à bien enlever les dièses, pour que les réglages ne soient plus des commentaires. Le ":80" peut également être remplacé ou supprimé si vous avez besoin de passer par un autre port.
N'oubliez pas non plus de relancer Apache après chaque modification du fichier de configuration afin que celles-ci soient bien prises en considération.

6.3 : Pages d'erreur personnalisées
  La personnalisation des pages d'erreur est très facile avec Apache. Cela vous permet de personnaliser encore un peu plus votre site. Dans le fichier de configuration d'Apache, on trouve par exemple ces lignes :
# Customizable error response (Apache style)
#   these come in three flavors
#
#      1) plain text
#ErrorDocument 500 "The server made a boo boo.
#   n.b. the single leading (") marks it as text, it does not get output
#
#      2) local redirects
#ErrorDocument 404 /missing.html
#   to redirect to local URL /missing.html
#ErrorDocument 404 /cgi-bin/missing_handler.pl
#   N.B.: You can redirect to a script or a document using server-side-includes.
#
#      3) external redirects
#ErrorDocument 402 http://some.other-server.com/subscription_info.html
#   N.B.: Many of the environment variables associated with the original
#   request will *not* be available to such a script.

Pour avoir une page d'erreur personnalisée pour les erreurs 404 par exemple, il suffit de se faire une page html personnalisée, de supprimer le dièse devant la ligne "#ErrorDocument 404 /missing.html" afin que celle-ci ne soit plus considérée comme du commentaire, et de remplacer "/missing.html" dans cette ligne par l'adresse de votre page.
il peut être utile par exemple de mettre une page contenant le plan de votre site, afin de guider le lecteur.

Partager sur

Sondage

Etes-vous tenté par le nouveau Mac mini M4 ?