Webmasters: comment éditez-vous vos fichiers ?

Bonjour à toutes et tous!

Etant en seconde année de formation webmaster, je me pose des questions auxquelles les profs n’ont pas encore répondu, à savoir comment procèdent les webmasters dans leur job quotidien.

Je m’explique: je suppose que passée l’étape de la conception, suit une étape de test “en ligne” ?

Mes questions sont donc les suivantes:

  1. chaque webmaster possède-t-il un serveur chez lui ? (ça m’étonnerait)
  2. une fois le site hébergé, quel type d’accès possède le webmaster afin d’apporter des modifications ?
  3. souvent, les serveurs de type *AMP habritent le site dans un sous-répertoire de /var/www. Comment y avoir accès ? (ssh?)
  4. Dans ce cas de figure, comment se passe l’édition à distance ? (éditeur? type de protocole?)
  5. Quelle serait la solution “royale” pour bien bosser chez soi ?

Bref! Beaucoup de questions (peut-être à côté de la plaque) dont les réponses restent assez floues pour moi (je ne suis d’ailleurs pas le seul dans ma classe !)

Merc d’avance pour vos réponses et bonne journée :smiley:

J’aurais plutôt dis développeur web que webmaster.

Actuellement il se trouve que c’est ce que je fais du développement web, je fais ça en JEE donc c’est un peu particulier. J’utilise Netbeans et maven, netbeans me permet de produire le code maven va compiler le projet et lancer le serveur puis déployer mon application dessus. Une fois l’application déployé j’y accède via localhost:8080.

Salut,

J’ai moi-même fait du développement web, et j’ai remarqué très rapidement que le plus pratique est d’installer un serveur web sur ta propre machine avec tout ce qu’il te faut.
Tu as de multiples avantages :
[ul][li]Tu peux développer en local tranquillement sans avoir besoin de connexions[/li]
[li]Tu mets absolument ce que tu veux dans ton serveur ; un serveur Web n’est pas forcément basé sur un “serveur LAMP” :
[list][*]Pour le L (Linux), tu peux très bien le faire avec un système basé sur un noyau BSD[/li]
[li]Pour le A (Apache), il existe d’autres serveur HTTP, ils ont chacun leurs avantages et leurs inconvénients (lighttpd, Tornado,…)[/li]
[li]Pour le M (MySql), tu as le choix entre MySQL, MariaDB (un fork du premier), Sqlite, Postgresql, Oracle,…[/li]
[li]Pour le P (PHP), tu as également beaucoup de choix : PHP, Python, Perl, Ruby, Java (JEE),…[/li][/ul][/
:m]
[li]Tu n’as aucune contrainte de place[/li][/list:u]

Alors si, je peux t’assurer que la plupart des développeurs Web ont un serveur web, souvent pas relié à Internet (aucun accès de l’extérieur), mais ils en ont un tout de même. :wink:

Sinon, pour transférer tes fichiers de chez toi à chez ton hébergeur, tu as souvent un accès FTP, c’est plus rare d’avoir un accès SSH car SSH n’est pas fait pour le transfert de fichier tout simplement !

Pour la base de données relationnel il y a derby pour java (mais je crois que ça peut s’utiliser avec n’importe quoi) qui est pas mal et très légère (dans la même veine que sqlite).

Tout d’abord, merci pour vos réponses!

@Misterfreez: développeur eût été un choix plus judicieux, je te l’accorde !

@minishooter:

D’accord avec l’accès FTP, mais ça sous entend que tu fais tout en local et que tu uploades une fois le travail fait?! Ce que je demandais était l’accès pour l’édition de fichiers distants. En fait, ce topic fait directement suite à une question que j’ai posée ce jour-même dans la rubrique “Support”, à savoir: comment ouvrir avec Kate un fichier distant se trouvant sur mon serveur (OpenBSD) dans le répertoire /var/www/monsite afin d’éditer directement les fichiers voulus (Vim le fait sans difficulté mais OpenBSD me pose des problèmes de locales et l’édition en devient laborieuse - quant à GVim, ça fonctionne nickel en local mais pas via sftp).

De là a découlé une série de questions sur le fait de savoir si la manière dont j’envisage les choses tient la route, d’où l’ouverture de ce topic.

A titre d’essai, j’ai réalisé un (mini) site très rapidement, l’ai déposé dans /var/www/monsite sur mon serveur OpenBSD et testé en ligne si tout allait bien (e.a. Apache). Ensuite, je me suis dit que je modifierais bien quelques petites choses et pour éviter de travailler en local et puis d’uploader les modifs, je pensais éditer directement les fichiers sur le serveur (donc en sftp).

A vrai dire, je ne sais qu’elle est la meilleure manière de travailler… Par exemple, je vais passer les fêtes de fin d’année chez mes beaux-parents à Paris (mon beau-père, a une machine en dual-boot Seven/Ubuntu) et j’aimerais pouvoir continuer mon travail à distance durant ces quelques jours.

Comment faire?

Précédemment, je procédais de la sorte:

  1. upload des fichiers dans mon répertoire /home/user/pub via ftp
  2. connexion en ssh
  3. copie des fichiers de /home/user/pub dans /var/www/monsite

L’édition de fichiers distants m’épargnerait ces étapes… A condition que cela fonctionne à chaque fois!

Un hébergeur externe ne permet pas cela ?? (vraie question)

Je suis preneur de tout conseil :smiley:

Pour l’édition des fichiers, tout dépend des possibilités que t’offre ton hébergeur.

Si tu as un accès SSH, et que le serveur SSH le permet, je pense que utiliser SSHFS peut être une très bonne solution, ça permet de monter un système de fichier distant en local grâce au protocole SSH, tu peux ensuite travailler dessus de façon transparente comme si tu venais de brancher une clé USB ou un disque dur externe. De plus, en utilisant SSHFS, tu disposes d’une connexion chiffrée! :stuck_out_tongue:

Si tu as seulement un accès FTP, il semble qu’il existe des méthodes pour monter tes répertoires distants comme des partitions locales sur ton ordinateur, je n’ai jamais testé personnellement, mais tu peux aller voir de ce côté :
nonameblog.info/monter-un-ftp-di … -gnulinux/

Et bien entendu, une fois que tu as monté tes partitions, tu peux travailler sur tes fichiers avec tous les outils que tu possèdes en local, donc n’importe quel éditeur de texte! :wink:

[quote=“minishooter”]Si tu as seulement un accès FTP, il semble qu’il existe des méthodes pour monter tes répertoires distants comme des partitions locales sur ton ordinateur, je n’ai jamais testé personnellement, mais tu peux aller voir de ce côté :
nonameblog.info/monter-un-ftp-di … -gnulinux/[/quote]
Une solution pas mal aussi c’est de faire par synchronisation. Tu modifie un répertoire local qui est une copie complète de ton site, tu synchronise et tu test. Au niveau de la tâche pour le développeur c’est un peu comme quand tu travail avec un langage compilé.
isalo.org/wiki.debian-fr/ind … Client_FTP

[quote=“minishooter”]…
c’est plus rare d’avoir un accès SSH car SSH n’est pas fait pour le transfert de fichier tout simplement ![/quote]
‘Scp’ copie parfaitement un fichier distant (sous couvert de SSH), il s’agit donc bien de transfert, non ?

surtout qu’avec sftp les utilisateurs du ftp ne sont pas dépaysés (et le ftp c’est le mal tout passe en clair)

[quote=“ricardo”][quote=“minishooter”]…
c’est plus rare d’avoir un accès SSH car SSH n’est pas fait pour le transfert de fichier tout simplement ![/quote]
‘Scp’ copie parfaitement un fichier distant (sous couvert de SSH), il s’agit donc bien de transfert, non ?[/quote]

Oui oui bien sûr, il peut être utilisé pour le transfert de fichier, grâce à scp et sshfs notamment. Mais au départ, ce n’est pas son but, tout comme le but de HTTP n’est pas fait pour le transfert de (gros) fichiers, et pourtant quasi tous les téléchargements passent par HTTP.
En revanche, FTP a été prévu pour transférer des fichiers, et sa variante FTPS (FTP over SSL) permet le chiffrement des données, il n’y a donc, je pense, pas de raison évidente d’utiliser SSH pour ça ! :slightly_smiling:

D’accord avec toi que le "spécialiste du transfert, c’est FTP mais à n’employer, comme tu le précises, qu’avec un “S” .

Évidemment, il faut toujours privilégier les protocoles qui chiffrent les données ! :slightly_smiling:

Tu n’as pas set encoding=utf-8 dans ton .vimrc ?

Attention : Vi sur OpenBSD ne renvoit pas à Vim comme sur Debian

je n’arrive pas à taper de caractères accentués dans la ligne de commande d’OpenBSD
mais avec Vim et l’option du dessus dans .vimrc il n’y a aucun souci.

edit : sinon pour tes questions, je crois que le plus simple est SSH,
une fois connecté, c’est vraiment comme si tu étais sur place.

Personnellement:

Edition des pages en local et transfert par scp. Correction des pages en direct. Attention, il faut se méfier de l’édition des pages .php. Tu peux essayer de charger des pages index.php~ sur des serveurs, parfois tu auras le code source de la page… En soi c’est donc une mauvaise idée même si je le fait (c’est connu je suis plus malin que les autres :slightly_smiling:)

Pourtant avec ssh :

  • tu te prends moins la tête à configurer ton firewall
  • tu peux sécuriser encore plus (clés ssh)
  • tu as tout le confort de FTP : les bons clients ftp supportent sftp, tu peux monter ton dossier avec sshfs.

Généralement, sur un serveur, tu as déjà ssh d’installé. Donc en fait, je ne vois pas de raison évidente d’utiliser ftp pour ça…

Personnellement, je préfère l’édition en local, et le transfert ensuite. Tu peux faire des tests en local sans que ton site soit impacté. Tu n’es pas non plus géné si ta connexion a des latences. De plus, ça te fait une sauvegarde supplémentaire : si en plus vous êtes plusieurs à bosser sur le site, tu n’auras pas un boulet qui t’effacera ton ton boulot de la matinée…

Salut,
Je vais répondre comment ça se passe dans mon taf. Je vais supposer que webmaster désigne un développeur web.
Avant tout, on utilise un système de gestion de version. Ça me semble indispensable.

1. chaque webmaster possède-t-il un serveur chez lui ? (ça m’étonnerait)

Chaque développeur a en effet un serveur en local pour faire ses tests avant de propager une nouvelle révision ou d’envoyer son patch.
Nous avons également une machine de tests qui est synchronisée très régulièrement avec le dépôt de sources pour que nos béta-testeurs puissent faire joujou avec pour seule consigne : «cassez notre appli si vous en êtes cap’»

2. une fois le site hébergé, quel type d’accès possède le webmaster afin d’apporter des modifications ?

Sur la machine de production, aucun. L’admin de la machine de production est prévenu lorsqu’une nouvelle version est disponible et taguée sur le dépôt de sources (ce qui arrive quand les béta testeurs n’arrivent plus à casser notre appli :slightly_smiling:). Il va la chercher et l’installe.

3. souvent, les serveurs de type *AMP habritent le site dans un sous-répertoire de /var/www. Comment y avoir accès ? (ssh?)

L’amdin de la machine de prod y va comme il veut (par ssh je suppose).
Pour la machine de test, l’intégrateur (le développeur qui est responsable de la cohérence des sources sur le dépôt) a un accès ssh dessus pour la mettre à jour et la décoincer lorsque nos béta-testeurs ont réussi à trouver un méchant bug (ils y arrivent mais c’est parce qu’ils sont vicieux).

4. Dans ce cas de figure, comment se passe l’édition à distance ? (éditeur? type de protocole?)

Pas d’édition à distance. La mise à jour des fichiers se fait via l’appel au système de gestion de versions.

5. Quelle serait la solution “royale” pour bien bosser chez soi ?

Tu n’as toujours pas deviné ? Un système de gestion de versions 8)

Enfin quelqu’un qui est d’accord avec moi. Lorsque l’on travail sur un ensemble de fichier à plusiseurs et/ou sur le long terme, il faut un gestionnaire de version. Coup de chance un gestionnaire de version peu envoyer les sources sur un serveur donc il est parfaitement adapté :slightly_smiling:

OK, bien compris!

Et, à tout hasard, quelle logiciel de gestion de versions utilisez-vous ?

Perso git sauf si tu es amené à travailler sous un mauvais OS à ce moment là mercurial.

Si tu veut de l’originalité il y a bazaar (réputé lent) et darcs (qui m’a l’air complexe).

Au boulot c’est pas moi qui décide et on utilise SVN. Très connu et documenté, il a quelques inconvénients (entre autres d’être trop centralisé à mon goût), mais ça reste un très bon outil.
Pour tout ce qui est perso, j’utilise git.