8768 sujets

Développement web côté serveur, CMS

Bonjour,

[Message reformulé le 11/03/22 à 11:00]
Je souhaite créer un serveur de développement web sur Mac (M1) (MAMP, XAMP non merci Smiley smile ) pour développeur : (Html, css, php, javascript). Le serveur de développement doit pouvoir fonctionner sans connexion.

Je suis sur puce M1. Ordinateur acquis il y a peu... C'est un paramètre important.

Sur mon ancien Mac (puce Intel):
J'avais installé un système de ce type... Vagrant, VirtualBox, Homestead.
Tuto.com Smiley confused m'a aidé pour l'installation :
le couteau suisse du développeur Web

Maintenant sur une puce M1... Virtual Box n'est plus accessible...pas compatibilité. Smiley eek

J'ai fait quelques recherches pour essayer un système de ce type mais sans résultat positif... je galère, ça ne marche pas. Smiley ohwell

Question finale:
Avez-vous une procédure fiable...fonctionnelle, pour reproduire ce type d'installation sur puce M1?

Merci pour le tapis volant ! Smiley ravi
Modifié par lvbeethoven (11 Mar 2022 - 11:15)
Bonjour Anymah,

Je doute que cette réponse soit très appropriée, si c'était si simple... Smiley murf
L'avertissement du manuel en tête de page est explicite "pas conçu pour être un serveur web complet"

a écrit :
Avertissement
Ce serveur web est prévu pour aider dans le développement des applications. Il peut également être utile pour les tests, et pour les démonstrations d'applications qui sont exécutées dans des environnements contrôlés. Mais par contre, il n'a pas été conçu pour être un serveur web complet. Aussi, il ne devrait pas être utilisé dans un réseau public.


L'idée ici est d'avoir un système de développement complet pour développeur.
Au delà de faire quelques tests.
Merci quand même Smiley smile
Modifié par lvbeethoven (11 Mar 2022 - 11:04)
Salut

Si tu veux un environnement stage et complet, sans passer par Mamp, je t'invite donc à regarder de plus près DOCKER Smiley smile
Bonjour Jencal,

L'objectif est de créer un(e) machine virtuelle/environnement autonome (pas besoin de connexion, serveur virtuelle sur la machine).

Docker est un système qui nécessite une connexion internet ?

En fait, la solution est déjà mentionné dans mon post.
Le problème dans cette solution et que virtual box n'est pas compatible la puce M1 de Mac.

Il y a vmware, ou parrallèle pour remplacement mais c'est payant... il y une VM (virtual machine) free mais il semble qu'elle ne soit pas prise en charge par les supports comme homestead ou vagrant.
Aucune solution pour l'instant.
Merci quand même Smiley smile

"Ne rien lâcher !" Smiley lol
Modifié par lvbeethoven (11 Mar 2022 - 11:05)
Salut,

Pourquoi pas de MAMP/XAMP Smiley question

Avec Docker tu seras a mi chemin d'une VM (cela ne simule pas toute la partie basse de l'OS comme le fait une VM).

Sinon pour que cela soit indépendant de ta machine de boulot, tu pourrais avoir un petit raspberry qui ferait tourner ton serveur à coté
Salut Mathieuu,

a écrit :
Pourquoi pas de MAMP/XAMP ??

Effectivement, je constate à l'instant que MAMP fonctionne sans connexion ! Smiley eek
Il traite le php.
Finalement ?

Serveur de dvlpt virtuel:
Je trouve cette mise en place interessante (vagrant, virtual box, homestead).Un max de stabilité et de possibilité je pense. J'ai utilisé ce système en novice en partie.
J'avoue être débutant sur beaucoup de points... Je me débrouille en html css, mais coté serveur et php...
Je suis un total débutant !


PHP:
Je compte apprendre le php et javascript d'ou l'intention d'avoir un support de développement fiable.

Mais aux vues de MAMP.. .
Avec du php sans connexion...
Je me dis mais pourquoi ce prendre la tête ?

Javascript:
MAMP fait le d'job aussi pour du javascript ?
Je n'ai jamais fait de javascript.

Virtual Machine:
Ceci dit je reste intéressé par la possibilité d'installer une machine virtuelle (serveur) sur M1 même si je trouve ça compliqué et que j'en comprend que la moitié, je trouve ça bien. Smiley murf

Autres:
J'ai un vieux pc ici, dans le futur je pense à le transformer en serveur !
C'est une autre histoire. Smiley biggrin

Docker:
Je vais me renseigner... tout ça n'est qu'une question de temps.

Merci à tous pour vos réponses
Modifié par lvbeethoven (11 Mar 2022 - 12:12)
Modérateur
Bonjour,

J'utilise MAMP depuis depuis des années et je ne vois pas trop où serait le problème dans ton cas.

Le P dans MAMP signifie php. C'est présent depuis le début de MAMP. Et évidemment que ça marche en local sans connexion internet : c'est sa raison d'être !

Javascript est interprété par le navigateur et pas par le serveur quand celui-ci fait du php. MAMP n'a donc aucun lien avec la possibilité ou non de faire du Javascript. Il existe côté serveur des technologie qui utilise Javascript (node.js par exemple). Mais c'est un autre monde.

Enfin, Docker me semble plus intéressant qu'une Virtual Machine (utilisé de plus en plus un peu partout, nombreuses configurations, nombreux tutos, relative facilité d'installation). Mais c'est utile surtout si tu commences à jongler entre différents types ou configurations de serveurs : peu de chance que ce soit ton cas.

En résumé, je pense que MAMP serait largement suffisant dans ton cas.

Amicalement,
Meilleure solution
Bon ok pour MAMP.... je coupe cours ! J'ai un souci avec lui... je vais ouvrir un post pour exposer le pb...qui a du surement être déjà évoqué !

[EDIT 11/03/2022 15:20]
Quoi que ça semble aller... Smiley confus bizarre "un pb de rafraichissement CSS dans Chrome... avec MAMP"

Parsimonhi tu es un véritable mentor Smiley cligne

Merci en tous pour vos interventions,
Finalement "c'est souvent plus simple que l'on ne le croit" Smiley smile
Modifié par lvbeethoven (11 Mar 2022 - 15:23)
connecté
lvbeethoven a écrit :
Bonjour Anymah,

Je doute que cette réponse soit très appropriée, si c'était si simple... Smiley murf
L'avertissement du manuel en tête de page est explicite "pas conçu pour être un serveur web complet"

Avertissement
Ce serveur web est prévu pour aider dans le développement des applications. Il peut également être utile pour les tests, et pour les démonstrations d'applications qui sont exécutées dans des environnements contrôlés. Mais par contre, il n'a pas été conçu pour être un serveur web complet. Aussi, il ne devrait pas être utilisé dans un réseau public.

Sous-entendu, pas fait pour être utilisé en production, pour des raisons de performances et de sécurité.

Et pourtant il suffit de tester pour se rendre compte que ça suffit pour développer n'importe quel projet en PHP. Si tu as besoin d'un accès à une base de donnée, il te suffit d'utiliser Homebrew pour installer et lancer en tant que service presque n'importe quelle base de données. Et oh... par miracle c'est aussi juste qu'une seule ligne de commande. Mais cette fois je vais pas prendre le temps de la donner vu que tu prends pas le temps de tester Smiley smile

J'ai jamais compris pourquoi vous utilisez tous MAMP alors qu'il est possible d'installer et utiliser indépendamment chaque élément de la stack très, mais très facilement.

Bref. Have fun.
Modifié par Anymah (11 Mar 2022 - 18:57)
Salut Anymah.... faut pas le prendre comme ça Smiley smile

Ta méthode est surement bonne, mais imagines qu'on te demande de peindre en rouge
Peindre en rouge c'est : "créer un serveur "virtuelle" sur une machine virtuelle etc comme, tu m'excuseras mon niveau... expliqué plus haut...et que toi tu viens peindre en bleu... c'est peint, ça fonctionne, mais l'objectif était rouge.

Après ce qui peut être intéressant pour toi, c'est d'exposer ton approche plus en profondeur, moi je suis pas du tout contre ta méthode au contraire !
Ça s'trouve t'as totalement raison Smiley smile , mais éplucher la php à mon niveau... surtout que je n'ai encore jamais étudié le php... ça va être une perte de temps.

Mon objectif et il reste en perspective: créer un serveur virtuelle sur l'ordi comme c'était fait dans la vidéo que j'ai glissé plus haut.. à la seule différence qu'à la place c'est autre chose que "virtual box" puisque incompatible avec puce M1.

En tous cas si tu m'expliques (même pour tout le monde en fait), si tu nous expliques comment procéder pour la mise en place d'un système etc. Je suis preneur !

Au plaisir, sincèrement Smiley cligne
Modifié par lvbeethoven (11 Mar 2022 - 21:25)
connecté
Okay très bien, on va reprendre depuis le début Smiley smile

MAMP c'est donc un serveur HTTP (Apache), une base de données (MySQL) ainsi que PHP. Si tu ne souhaites pas utiliser MAMP, il te faut donc installer chaque élément séparément. Comme j'ai dit c'est très simple. Mais surtout, tu vas pouvoir choisir ce que tu veux installer. Car y'a pas qu'Apache comme serveur HTTP, ni MySQL comme base de données.

L'utilitaire que tout développeur devrait installer d'office sur macOS c'est Homebrew. Tu vas pouvoir installer (et mettre à jour) presque n'importe quoi sur ta machine avec une ou deux commandes très simples.

PHP vient nativement avec macOS mais la version installée par défaut c'est pas la dernière sauf erreur. Tu peux donc installer la dernière version avec Homebrew avec un simple :
brew install php

Tu peux installer MySQL de manière similaire avec cette commande :
brew install mysql

Tu peux lancer et stopper le service MySQL de cette manière :
brew services start mysql
brew services stop mysql

Ensuite, le serveur HTTP de développement intégré à PHP se lance comme suit :
php -S localhost:8080

Et là, y'a plus qu'à lancer ton IDE favori, choisir le plugin approprié pour gérer ta base de données (pour remplacer PHPMyAdmin), et c'est parti ! Alors j'ai été bref dans la procédure, parce que le but c'était pas de faire un tutoriel complet, mais surtout de te montrer à quel point c'est très simple de mettre en place ton environnement de développement. Les détails tu les trouveras dans les documentations.

De cette manière, tu peux potentiellement lancer des services pour avoir respectivement MongoDB, PostgreSQL et MySQL qui tournent en même temps ainsi que lancer simultanément plusieurs serveurs web de développement avec N racines différentes (pour autant de changer au moins le port à chaque fois). Le tout nécessitant juste de retenir 2 ou 3 commandes.

En espérant t'avoir apporté quelque chose, bon code !

EDIT : je suis aussi sur un mac avec la puce M1, donc pas d'excuses Smiley smile
Modifié par Anymah (11 Mar 2022 - 23:11)
Salut Anymah !
Ton retour est super !
(Moi je débute en code t'sais... faut pas m'en vouloir)

Homebrew
Effectivement... très pratique est facile d'utilisation. J'avais découvert Homebrew il y a peu.

PHP
Sur M1, "ils ont viré php"
J'ai d'ailleurs installé la version 8.xxx avec Homebrew.

Mysql
Ok... aucun pb de ce coté, je vais l'installer.

Là ou je bloque c'est l'IDE
Je n'ai pas d'IDE... Smiley sweatdrop .
J'avais testé NetBean mais j'accroche pas.
Que me conseille tu comme interface de développement ?

a écrit :
Choisir le plugin approprié pour gérer ta base de données (pour remplacer PHPMyAdmin), et c'est parti !

Là je suis à l'ouest Smiley murf

Conclusion
Ton approche se rapproche bq de mon idée de départ, en plus simple peut-être ?
Le pb c'est l'IDE et le plugin (remplacer PHPMyAdmin).
Juste quelques points ou je suis perdu, mais cette mise en place pourrait totalement convenir à ce que je veux faire !

Ah les développeurs... Smiley ravi
php -S localhost:8080

Alors que toi tu t'y connais en code comme Jacouille la fripouille s'y connait en voiture Smiley lol
Modifié par lvbeethoven (12 Mar 2022 - 10:09)
connecté
Hello !

JetBrains font les meilleurs IDEs selon moi, mais c'est pas gratuit (sauf quelques exceptions). Donc c'est intéressant pour un professionnel uniquement. Dans la catégorie gratuit et léger, le plus populaire en ce moment c'est Visual Studio Code sur lequel tu trouveras à peu près tous les plugins possibles.

De rien pour le retour, enjoy Smiley smile
Modifié par Anymah (12 Mar 2022 - 14:58)
Merci pour ton retour Anymah !

Je reprends ton explication:
Choisir le plugin approprié pour gérer ta base de données (pour remplacer PHPMyAdmin), et c'est parti !

Que veux-tu dire ?

Merci Smiley smile

Ps: je suis entrain d'essayer Studio Code
Modifié par lvbeethoven (13 Mar 2022 - 02:24)
@lvbeethoven : PHPMyAdmin est une solution graphique pour la gestion de MySQL. Il est intégré de base dans MAMP. Là encore, vous pourriez tout administrer en ligne de commande, mais phpMyAdmin vous simplifie la tâche.

@Anymah : je comprends tout à fait ton point de vue, mais il faut comprendre d'où l'on vient, tout cela est lié a l'histoire. Je parle surtout pour les gens qui, comme moi, ont abordés le web par le front. Il fut un temps donc, où tout se passait dans un dossier et où les gens faisaient des mises en page avec des tableaux, bossaient avec DreamWiever pour les plus fortunés... Puis sont arrivés les pré-processeurs CSS et autres task-runner, (Grunt et Gulp pour ne citer qu'eux). Les développeurs front se sont donc mis à Ruby puis à Node.js pour compiler. Symfony, dans sa version 2, a commencé à exiger le terminal. Petit à petit, le monde du front s'est habitué à la ligne de commande. Du coup, moi, ça ne m'a plus rien coûté quand je suis définitivement passée sous Node.js. Mais il faut reconnaître que l'empilement des stacks n'est pas facile à appréhender pour le développeur débutant, que de choses à savoir avant d'écrire sa première ligne de code ! Heureux ceux qui, comme moi, on pu accompagner l'évolution du web. Personnellement je reste un amateur, j'ai commencé en 2009 au moment où se mettait en place le responsive, si j'avais dû commencer en 2021, vu les connaissances qu'il faut avoir aujourd'hui pour démarrer quelque chose de correct, je n'aurais pas pu me lancer...
Modifié par Olivier C (13 Mar 2022 - 10:22)
connecté
Salut,

@Olivier Je comprends ton point de vue aussi, et évidemment que les backgrounds, les niveaux et les technologies employées sont différentes. Heureusement, le forum serait bien triste sinon. Disons juste que j'ai trouvé ça gonflé qu'on me dise "c'est sûrement pas la solution car c'est trop simple" sans avoir testé.

@lvbeethoven Les plugins ajoutent des fonctionnalités en plus à ton éditeur. Tu en trouveras à toutes les sauces. Si tu recherches "SQL" dans l'onglet dédié, tu devrait trouver quelque chose pour administrer ta base de données (création des tables, affichage des données, etc). L'équivalent de PHPMyAdmin sur MAMP en gros.
MAMP fait le taf pour le moment, mais cette histoire de serveur me convenait bien...
De mon coté j'avoue crouler sous les sujets à aborder pour cadrer une activité sur internet
Du code... du design graphique, du commerce etc.
Heureusement ça me plait... Détermination !
Sinon il m'aurait fallu un gros compte en banque Smiley sweatdrop
upload/1647174560-84317-capturedancran2022-03-13no13-.jpg
Anymah a écrit :
@lvbeethoven Les plugins ajoutent des fonctionnalités en plus à ton éditeur. Tu en trouveras à toutes les sauces. Si tu recherches "SQL" dans l'onglet dédié, tu devrait trouver quelque chose pour administrer ta base de données (création des tables, affichage des données, etc). L'équivalent de PHPMyAdmin sur MAMP en gros.

Administrer ta base de données ?
Ok je vais me renseigner Smiley murf

Merci Anymah !

Olivier a écrit :
@lvbeethoven : PHPMyAdmin est une solution graphique pour la gestion de MySQL. Il est intégré de base dans MAMP. Là encore, vous pourriez tout administrer en ligne de commande, mais phpMyAdmin vous simplifie la tâche.

Une solution graphique ?

J'avoue que "ligne de commande", c'est tout un monde.
J'ai acheté un bouquin sur MySQL... il va m'aider ! Si je deviens pas Smiley biggol avant.
Modifié par lvbeethoven (13 Mar 2022 - 13:48)