Dossier site, partage web.

JPTK

Membre vénérable
Club iGen
19 Septembre 2002
21 884
2 904
48
Grenoble/Le Creusot
jamrek.com
Salut.

Juste pour savoir si on pouvait partager sur le web un autre dossier que le dossier "site" du dossier utilisateur ? Puis-je par exemple partager mon dossier "photo" et avoir ainsi une URL à donner à quelqu'un ? Je trouve dommage que l'on soit obligé de passer par le dossier "site".
Un ptit freeware sinon ? Pas un logiciel de p2p merci, j'aimerais que mon dossier soit accessible d'un navigateur.

:zen:
 
Dark Templar a dit:
C'est très simple, tu as juste à rajouter quelques lignes dans le fichier httpd.conf situé dans /etc/httpd/. Tout est documenté et tu peux t'aider des exemple donc je pense que tu y arriveras ;)

Ah ouai ? J'espère que t'as rien parié alors ! :love: :mouais: :( :D
Je comprends rien :rolleyes:
 
jaipatoukompri a dit:
Je comprends rien :rolleyes:
M'en serait un peu douté à vrai dire, mais je voulais te voir dire "jaipatoukompri". Bon pas grave, ce sera pour une autre fois.
Alors tu ouvres le fichier en question avec un éditeur de code (BBEDit si tu as, sinon tu télécharges SubEthaEdit qui est gratuit) et tu cherches aux alentours de la ligne 600 (dépend de ce qu'il y a dans ton fichier) "<IfModule mod_alias.c>".
C'est à cet endroit que sont définis les répertoires accessibles depuis le web. Tu peux regarder ceux qui sont déjà là pour essayer de comprendre (ce serait mieux) ou chercher un mode d'emploi en français si ça existe.
Sinon moi j'ai eu la même envie donc voilà ce que j'ai marqué :
Bloc de code:
    #
    # Alias pour mes Images
    #
    
    Alias /~romain/images/ "/Users/romain/Pictures/"
    Alias /~romain/images "/Users/romain/Pictures/"
    Alias /images/ "/Users/romain/Pictures/"
    Alias /images "/Users/romain/Pictures/"
    
    <Directory "/Users/romain/Pictures/">
        Options MultiViews
        AllowOverride None
        Order allow,deny
        Allow from all
    </Directory>
En gros les 4 lignes qui commencent par alias donnent les URL sous lesquelles sera accessible le répertoire Images de mon dossier Départ : http://IP/images/ et http://IP/~romain/images/
Tu mets ce que tu veux, tu peux bien sur ne créer qu'un alias. Là les lignes paraissent être en double mais c'est pour que le répertoire soit accessible avec et sans / à la fin de l'URL.

Ensuite la partie entre les balises directory c'est là que tu définis les droit : ici les gens n'ont pas le droit d'afficher le contenu des dossiers (il doivent avoir l'URL précise d'une image où il faut que tu fasses une page PHP qui affiche le contenu du répertoire). Si tu veux qu'ils puissent afficher la liste (comme sur un espace perso free)
Tu remplaces Options MultiViews par Options Indexes MultiViews.
Ensuite tu sauvegarde (si l'éditeur te dit qu'il n'y arrive pas pour cause de problèmes de droits, tu enregistre sur ton bureau et tu remplaces à la main avec le Finder) et tu redémarre le partage web dans les préférences système.


[Edit]Ha oui deux petites précisions :
Ca sert de cliquer sur les liens qui comment par http://IP/ il aboutiront à rien, et bien sur tu remplaces romain par ton nom d'utilisateur à chaque fois. ;)
 
  • J’aime
Réactions: Balooners
Juste pour mettre mon grain de sel : le serveur Web qui vient avec Mac OS X est Apache, avec même PHP.
Autrement dit, toute question à son sujet devrait trouver une réponse dans les nombreux Howtos et autres aides accessibles en ligne relatifs à Apache.
Un bon site : www.phpmac.com
 
Dark Templar a dit:
C'est très simple, tu as juste à rajouter quelques lignes dans le fichier httpd.conf situé dans /etc/httpd/. Tout est documenté et tu peux t'aider des exemple donc je pense que tu y arriveras ;)

Juste un truc en passant, c'est normal que le dossier "private" soit invisible et que je ne puisse y accéder que part le lien que tu laisses ?

Et si mon dossier est sur une autre partition (c'est le cas) comment je fais pour connaître le chemin qui mène à mon dossier, je vois à peu près, faut passer par volumes, n'empêche que je sais pas l'écrire.
 
Dans le fichier de configuration httpd.conf, il faut écrire le chemin Unix.
Autant alors ouvrir un Terminal.
Si tu tapes 'df -k' + enter tu verras la liste des volumes avec leur nom
pour Unix (il me semble que si le nom du volume contient un accent dans
le Finder, il sera remplacé par un caractère ASCII non accentué ou un
underscore au niveau Unix).
Bref un exemple : j'ai un volume nommé Maui => son chemin Unix est
"/Volumes/Maui". Après tu rajoutes le chemin qui mène au répertoire voulu.
Genre : "/Volumes/Maui/myData/myDir/"
Voilà.

Puisque tu en es à t'occuper de ton site sur ton Mac : par défaut, PHP n'est
pas utilisable dans ton dossier "Sites" il faut donc l'autoriser à la mimine
(voir www.phpmac.com).
J'ai voulu mettre la dernière version de MySQL (pour utiliser dotClear) : la
version de PHP de Panther n'est pas compatible. Il faut une version 3, pas 4
de MySQL.
C'était pour dire, en passant.

Bon courage

eb
 
Dark Templar a dit:
M'en serait un peu douté à vrai dire, mais je voulais te voir dire "jaipatoukompri". Bon pas grave, ce sera pour une autre fois.
Alors tu ouvres le fichier en question avec un éditeur de code (BBEDit si tu as, sinon tu télécharges SubEthaEdit qui est gratuit) et tu cherches aux alentours de la ligne 600 (dépend de ce qu'il y a dans ton fichier) "<IfModule mod_alias.c>".
C'est à cet endroit que sont définis les répertoires accessibles depuis le web. Tu peux regarder ceux qui sont déjà là pour essayer de comprendre (ce serait mieux) ou chercher un mode d'emploi en français si ça existe.
Sinon moi j'ai eu la même envie donc voilà ce que j'ai marqué :
Bloc de code:
    #
    # Alias pour mes Images
    #
    
    Alias /~romain/images/ "/Users/romain/Pictures/"
    Alias /~romain/images "/Users/romain/Pictures/"
    Alias /images/ "/Users/romain/Pictures/"
    Alias /images "/Users/romain/Pictures/"
    
    <Directory "/Users/romain/Pictures/">
        Options MultiViews
        AllowOverride None
        Order allow,deny
        Allow from all
    </Directory>
En gros les 4 lignes qui commencent par alias donnent les URL sous lesquelles sera accessible le répertoire Images de mon dossier Départ : http://IP/images/ et http://IP/~romain/images/
Tu mets ce que tu veux, tu peux bien sur ne créer qu'un alias. Là les lignes paraissent être en double mais c'est pour que le répertoire soit accessible avec et sans / à la fin de l'URL.

Ensuite la partie entre les balises directory c'est là que tu définis les droit : ici les gens n'ont pas le droit d'afficher le contenu des dossiers (il doivent avoir l'URL précise d'une image où il faut que tu fasses une page PHP qui affiche le contenu du répertoire). Si tu veux qu'ils puissent afficher la liste (comme sur un espace perso free)
Tu remplaces Options MultiViews par Options Indexes MultiViews.
Ensuite tu sauvegarde (si l'éditeur te dit qu'il n'y arrive pas pour cause de problèmes de droits, tu enregistre sur ton bureau et tu remplaces à la main avec le Finder) et tu redémarre le partage web dans les préférences système.


[Edit]Ha oui deux petites précisions :
Ca sert de cliquer sur les liens qui comment par http://IP/ il aboutiront à rien, et bien sur tu remplaces romain par ton nom d'utilisateur à chaque fois. ;)

Bon j'ai modifié les lignes, comment je fais après, j'active le partage web mais quelle est l'url ?

Si c'est sur le volume ben, dans le dossier zob ça donne ça ? :

http://IP/~volumes/ben/zob

Ah oui et un grand classique, c'est quoi la clé clavier pour "~" ? ;)
 
~ = Option n puis barre d'espace :D

Si je me souviens bien, ça marche aussi pour le clavier Qwertzuiop des Suisses romands... ;)
 
jaipatoukompri a dit:
Si c'est sur le volume ben, dans le dossier zob ça donne ça ? :
http://IP/~volumes/ben/zob
Quand tu écris : Alias /monmachin/ "/Volumes/ben/zob/" dans httpd.conf, tu y accèdes par http://cheztoi/monmachin/
Où je rappelle que chzetoi = ton IP, ou ton nom de domaine si t'en as un (a priori t'en as au moins un local par rendez vous, en kekchose.local)
 
Spyro a dit:
Quand tu écris : Alias /monmachin/ "/Volumes/ben/zob/" dans httpd.conf, tu y accèdes par http://cheztoi/monmachin/
Où je rappelle que chzetoi = ton IP, ou ton nom de domaine si t'en as un (a priori t'en as au moins un local par rendez vous, en kekchose.local)

Ouai bah ça marche pas pour l'instant, j'active le partage web, je relève mon ip qui est par exemple : http://101-123.040.84.adsl.skynet.be/~ben/

Dans safari je tape http://101-123.040.84.adsl.skynet.be/ben/zob/

et puis j'ai ça :

Forbidden
You don't have permission to access /ben/zob on this server
 
jaipatoukompri qui aurait bien fait de s'appeler jairienkompri a dit:
Forbidden
You don't have permission to access /ben/zob on this server

Dark Templar a dit:
Ensuite la partie entre les balises directory c'est là que tu définis les droit : ici les gens n'ont pas le droit d'afficher le contenu des dossiers (il doivent avoir l'URL précise d'une image où il faut que tu fasses une page PHP qui affiche le contenu du répertoire). Si tu veux qu'ils puissent afficher la liste (comme sur un espace perso free)
Tu remplaces Options MultiViews par Options Indexes MultiViews.

Bon là j'écris juste une phrase comme ça parce que si je mets que des citations vbulletin me dis que je floode (moi !?!? :sick: )
 
Par défaut c'était déjà "Options Indexes MultiViews" :confused:

Y a pas d'erreurs non ?

Alias /ben/mp3/ "/Volumes/ben/mp3/"
Alias /ben/mp3 "/Volumes/ben/mp3/"
Alias /mp3/ "/Volumes/ben/mp3/"
Alias /mp3 "/Volumes/ben/mp3/"

<Directory "/Volumes/ben/mp3">
Options Indexes MultiViews
AllowOverride None
Order allow,deny
Allow from all
</Directory>