Page 1 sur 1

[apache & node js] les deux en meme temps

Publié : ven. 20 janv. 2017, 15:10
par AchilleFraisse
Bonjour,
J'ai des sites web dans mon /srv/http

J'ai donc :

Code : Tout sélectionner

/srv/http/site1/
/srv/http/site2/
/srv/http/site3/
/srv/http/site4/
/srv/http/projetnodejs/
J'aimerais que les sites (dans les dossiers site1, site2, site3 et site4) soit géré par apache, et que projetnodejs soit géré par node.js.
Parce que si dans projetnodejs je lance un serveur sur le port 8292, ben lorsque je tape dans l'url localhost:8292, il prendra comme racine /srv/http et non /srv/http/projetnodejs.

Vous comprenez ?

Merci pour votre aide...

Re: [apache & node js] les deux en meme temps

Publié : ven. 20 janv. 2017, 16:33
par papajoke
bonjour

et non i don't understand
nodejs est un interpréteur de langage javascript comme php

perso je fais du nodejs sans serveur http, c'est juste un langage
je lance un serveur sur le port 8292
merci de ne pas confirmer ce que tu utilises comme serveur (pas apache :x ); je suppose que tu as écrit ton propre serveur en javascript ?? donc c'est toi dans ton code qui gère le dossier root

Re: [apache & node js] les deux en meme temps

Publié : ven. 20 janv. 2017, 16:52
par AchilleFraisse
Euh oui...
Je lance mon propre serveur :

Code : Tout sélectionner

node serveur.js
Mais dans mon serveur, lorsque je gère la racine du site :

Code : Tout sélectionner

app.get('/', function (req, res) {
  ...
});
sur mon disque dur, quelle page sera chargé, dans quel dossier ?

Re: [apache & node js] les deux en meme temps

Publié : ven. 20 janv. 2017, 17:05
par papajoke
tu utilises express, c'est une des nombreuses bibliotheques écrite en nodejs, il y a une bonne doc et en fr !

Tu n'as pas compris le principe du routage !
app.get('/', function (req, res) c'est ce que tu vas taper dans ton navigateur, ensuite c'est a toi dans le code qui suit de charger (si tu en a besoin) une page (html), par exemple :

Code : Tout sélectionner

//res.send('/usr/monserveurnode/index.html');
res.sendfile('/usr/monserveurnode/index.html')
ceci (sendfile) n'est valable que pour retourner du contenu statique ! mais il existe express.static pour ces fichiers

Re: [apache & node js] les deux en meme temps

Publié : ven. 20 janv. 2017, 17:22
par AchilleFraisse
A ok... Donc je peux mettre mon serveur dans /home/users/video/superman/un_dossier_nul/ et le lancer.
Puis à l'intérieur du fichier du serveur, pour chaque url, je le redirige vers une page spécifique ?

Et donc il faut qu'il y ait qu'un seul fichier serveur ? Il risque d'être long, non ?

Re: [apache & node js] les deux en meme temps

Publié : ven. 20 janv. 2017, 17:28
par papajoke
dans l'application serveur tu ne code que le routeur, on peut comme avec php inclure des fichiers.
le routeur appelle un moteur de template (ca existe aussi en php donc tu devrais connaitre)
Pour tous ce qui est statique tu utilises express.static (lien donné + haut)

La plupart des framework php,ruby,python,java... utilisent aussi ces notions routeur,template,middleware donc ceci n'est pas spécifique à nodejs mais une technique classique en developpent web

Re: [apache & node js] les deux en meme temps

Publié : ven. 20 janv. 2017, 18:37
par AchilleFraisse
Ok, merci pour tes réponses.
Dernière question, parmis les différents tuto que j'ai lu beaucoup déconseille d'utiliser le port 80 pour se connecter au serveur lorsqu'on le test en localhost. Pourquoi ?

Re: [apache & node js] les deux en meme temps

Publié : ven. 20 janv. 2017, 18:43
par papajoke
simplement que si tu fais du dev web, généralement il est déjà pris

Re: [apache & node js] les deux en meme temps (résolu)

Publié : ven. 20 janv. 2017, 18:59
par AchilleFraisse
Ok, merci pour ton aide !