Apache, un des plus populaire et puissant serveur Web, est installé avec Mac OS X, nous allons voir comment l’activer et mettre des pages en ligne...
Un site web est un ensemble de fichiers au format texte reliés entre eux par des liens dits hypertextes, ces fichiers souvent ecris en HTML sont localisés dans un dossier sur un ordinateur connecté à Internet.
Il est possible d’acceder à ces fichiers grâce à différentes méthodes, différents protocoles de communication.
En premier lieu, par FTP (1), pour poser les fichiers sur une machine distante par exemple. Dans ce mode, on ne visualise pas directement le contenu ni l’apparence des fichiers, on peut par contre les manipuler. On peut aussi utiliser des connections en SSH (2), pour créer et modifier des fichiers sur un ordinateur distant connecté à Internet.
On fini par chercher à visualiser le contenu de ces fichiers, de manière à afficher des informations, comme une présentation de ses activités, le contenu d’une base de données, etc... On peut vouloir diffuser un contenu autre que textuel comme des fichiers audio ou vidéo.
En gros on peut créer un site web, et accéder à celui-ci grâce au protocole HTTP (3). Il sera affiché par une application cliente, un naviguateur, qui sait interpréter des pages de texte mis page grâce au format HTML (4) et à la spécification CSS (5), et éventuellement effectuer des actions grâce à des languages de scripts genre JavaScript, afficher d’autre types de médias grâce à des plug-ins (des logiciels client spécialisés dans la lecture de ces formats, comme Flash, QuickTime, Real One Player, etc...).
Sachez que tout ceci est possible avec OS X et dès l’installation du système. Votre Mac doit être connecté à Internet en haut débit, c’est préférable pour servir un site web, c’est même le minimum.
Pour activer le serveur web Apache il suffit d’aller cocher une case dans les préférences système, rubrique partage. Dans le premier onglet, cocher la case "Partage Web personnel" suffit à lancer Apache et vous permettre ainsi de servir des pages web avec votre Mac.
Il va falloir mettre des pages HTML dans un répertoire de votre Mac. Il en existe un (et même plusieurs) réservé à cet effet, il est dans votre dossier de départ, c’est le dossier Sites (/Users/Nom_Utilisateur/Sites).
Par défaut, votre serveur Apache est configuré pour servir une page index.html, il va donc afficher celle présente dans votre dossier Sites, votre répertoire personnel sous OS X pour héberger vos pages web. Celle-ci est liée à dautres pages grâce à des liens hypertexte.
Il existe par défaut un petit site web qui vous explique que le serveur Apache de votre Mac est opérationnel, vous pouvez le visualiser à l’adresse :
ou
les adresses "localhost" et "127.0.0.1" sont celles par défaut de votre machine en local, vous seul pouvez atteindre votre Mac avec celles-ci, elles permettent de tester son travail en local, sans avoir besoin d’être connecté à un réseau.
ou
Par exemple, comme indiqué dans l’onglet partage de votre Mac OS X. Là, n’importe quelle personne à qui vous donnez cette adresse peut visualiser vos pages.
Si vous voulez pouvoir donner toujours la même adresse à vos contacts, ou tout simplement disposer d’une URL personnalisée, il vous faudra vous doter d’un alias DNS (voir l’article sur les alias DNS).
Dans ce cas votre site web personnel sera accessible là :
Il existe un autre répertoire ou l’on peut entreposer des applications web, c’est le dossier /Library/WebServer/Documents, qui appartient quand à lui à l’utilisateur référencé sous le doux nom de www, qui n’est autre que le possesseur officiel du serveur Apache. C’est à cet endroit que l’on peut placer les sites Web globaux sur le Mac, ces sites ne font pas référence à un utilisateur en particulier.
Les pages et applications de ce répertoire seront quand à elles accessibles depuis tous les comptes de la machine, il servira donc à héberger un site plus général, où plusieurs personnes peuvent intervenir.
Il est accessible par un navigateur aux adresses :
En local...
Depuis Internet.
Il ne vous reste donc qu’a placer par exemple dans votre dossier Sites (perso pour débuter), vos pages web et galeries de photos.
Si vous vous sentez de plonger dans le HTML (ce qui constitue une base nécessaire pour débuter), je vous invite à suivre les quelques liens ci-dessous pour vous initier :
Débuter en HTML avec le site du zéro
Cours complet sur selfhtml.org
La norme HTML 4 en Français
Ce sont des exemples, il existe des tas d’autres sites sur HTML, CSS, JavaScript, PHP, etc.... Les langages de base du World Wide Web.
File Transfert Protocol = Protocole de transfert de fichiers Secured Shell = Shell sécurisé Hyper Text Transfert protocol = Protocole de transfert hyper-Text Hypertext Markup Language = Langage de balisage hypertexte Cascading style sheet = Feuilles de style en cascade
Très intéressant ... justement je suis en train de créer un serveur web sur mon mac qui tourne sous 10.5. Je recherche sans succès le dossier /Library/WebServer/Documents. S’avez vous ou je peux le trouver ?
Je souhaite pouvoir via http://mon_alias.dyndns.org/ accéder à mon site internet. Pour cela j’ai besoin de modifier le repertoire de l’utilisateur www qui est introuvable sous 10.5
J’ai un serveur qui fonctionne bien, si ce n’est que, de temps à autre, on ne peut plus accéder à celui-ci sans que je n’ai touché à quoi que ce soit.
Dans ce cas, je vais voir "Préférences Système" -> "Partage" -> "Partage Web" : j’essaye de décocher "Partage Web" puis de le recocher (pour relancer apache), mais là ça ne se relance pas, le bouton où on doit cocher reste grisé et inactif.
A quoi peut correspondre ce genre d’incidents ? Est-ce lié à la sécurité, à des éventuelles intrusions ?
Que dois-je faire ?
Merci.
bonjour
je voudrais savoir comment faire pour que ma page d’accueil faite sous images ready apparaisse au lieu de voir la page marquée "index of / et mon nom " je ne trouve pas presentable de voir ça ?
merci par avance
julien
Salut Julien,
Il suffit pour cela de nommer cette page index.html et de la placer avec les fichiers qui sont éventuellement liés à cette page dans le dossier Sites.
@+ :)
Chez moi, Apache pointe uniquement vers le dossier /Library/WebServer/Documents ; impossible d’accéder à localhost/mon_nom, qui me renvoie une erreur 404. Même punition si tentative d’accès par un poste distant (par le biais de mon adresse internet - merci dydns.org !). En revanche, quand j’ai remplacé la littérature Apache dans le dossier /Library/WebServer/Documents par la mienne, là çà fonctionne (à condition d’ajouter /index.htm. à la fin de l’adresse, sinon, on se retrouve avec le listing de tous les fichiers et dossiers contenus dans le dossier /Library/WebServer/Documents).
Question, comment oblige-t-on Apache à pointer vers tel ou tel dossier ?
Merci
Salut Philippe,
Premièrement, je pense que tu as oublié le tilde, que l’on obtient avec la combinaison de touches alt+n, juste avant ton nom de connexion, ex :
Ensuite, tente de nommer ton index, index.html plutôt que index.htm, il me semble que cela fonctionnera bien mieux dans ce cas précis ;)
Enfin, bien qu’il ne soit pas très prudent de modifier le dossier qui sert de dossier principal à Apache lorsque l’on ne sait pas vraiment ce que lon fait, et ceci pour des raisons de sécurité, on peut le faire dans le fichier de configuration d’Apache :
Il convient de modifier la variable DocumentRoot, puis un peu après la directive Directory qui fixe les modalités d’accés à ce dossier.
@ plus :)
j’ai pourtant activé dans pref syst, "partage web personnel" j’ai créé un index dans "sites" et lorsque je me connecte :
"forbidden
You don’t have permission to access / julien/ on this server."
qu’ai-je oublié
merci d’avance
julien
Salut Julien,
Tu dis que tu as crée un fichier index.html dans ton dossier Sites, ce fichier est lu en premier par le serveur, et s’il n’a pas les bons droits en lecture, cela peut provoquer ce genre d’erreurs. Verifie donc les droits et le possesseur de ce fichier afin qu’il soit lisible par tous.
non j’ai pourtant toutes les autorisations..... je précise que ma config est un ibook en airport un portable wifi et un pc en ethernet derrière une freebox en mode rooter activé
je précise aussi que lorsque je prends le mac de ma copine chez elle sur sa live box je n’ai aucun problème Apache marche parfaitement
Des idées
Vraiment merci d’avance
J’ai activé le serveur qui me propose l’adresse http://10.0.1.2/ laurentortas/ pour affiché mon site. J’ai 2 ordinateurs, celui sur lequel j’ai créé mon site et je m’y connecte (via airport) sans problème depuis l’autre. Mais impossible de m’y connecter depuis l’extérieur. L’ordinateur hébergeant le site est connecté en ADSL free (mon IP fixe est 81.57.220.171 ?) via une borne Aiport.
Que dois je faire pour que mon site soit vu de l’extérieur ?
bonjour, as-tu trouvé une solution, j’ai le meme probleme merci
"J’ai activé le serveur qui me propose l’adresse http://10.0.1.2/ laurentortas/ pour affiché mon site. J’ai 2 ordinateurs, celui sur lequel j’ai créé mon site et je m’y connecte (via airport) sans problème depuis l’autre. Mais impossible de m’y connecter depuis l’extérieur. L’ordinateur hébergeant le site est connecté en ADSL free (mon IP fixe est 81.57.220.171 ?) via une borne Aiport.
Que dois je faire pour que mon site soit vu de l’extérieur ?"
Il convient d’ajouter une règle dans la table de routage du routeur pour indiquer l’IP de la machine qui héberge le serveur Web.
Ainsi les requêtes sur le port 80 seront redirigées vers la machine en question.
Tu as certainement fait une erreur dans le fichier httpd.conf lors de la configuration de PHP, autant revenir à cet article et refaire cette configuration.
@+ :)
Euhhhhh
Pousser un peu plus loin en parlant d’hébergements multiples sur une machine, avec comptes FTP, Image magick, et tout le toutim (les stats aussi), c’aurait certes été beaucoup plus long, mais ç’aurait permis de concentrer en 1 point et en Français des docs éparpillées sur le web souvent en anglais. Perso, je m’y tenterais bien, mais je suis un peu léger sur certains aspecs techniques.
Dommage. J’attendais plus de cet article.