Cloud Web-old - CloudWeb Nodejs FTP
... / CloudWeb Nodejs FTP
BMPCreated with Sketch.BMPZIPCreated with Sketch.ZIPXLSCreated with Sketch.XLSTXTCreated with Sketch.TXTPPTCreated with Sketch.PPTPNGCreated with Sketch.PNGPDFCreated with Sketch.PDFJPGCreated with Sketch.JPGGIFCreated with Sketch.GIFDOCCreated with Sketch.DOC Error Created with Sketch.
Frage

CloudWeb Nodejs FTP

Von
ThomasC20
Erstellungsdatum 2018-12-17 11:33:56 (edited on 2024-09-04 11:53:53) in Cloud Web-old

Bonjour à tous, je repose ma questions dans un nouveau sujet car je cherche depuis un long moment des réponses concernant la mise en ligne d'un projet nodejs sur un hebergement Cloud Web.
Je vous met le lien sur lequel j'ai posté ma première question pour que vous ayez le contexte:
https://community.ovhcloud.com/community/fr/hebergement-web-nodejs?id=community_question&sys_id=3791bd08f15e42d01e11e7bb9bf10394

J'ai continué a faire des essais et j'ai désormais une réponse 504 time out.
Pour le moment mon script de lancement (www il me semble) se trouve dans un dossier bin par defaut (créé par express generator).
J'ai indiqué coté ovh que mon script de lancement était bin/www mais ça ne fonctionne pas, du coup j'ai mis mon fichier www à la racine de mon projet mais ça fonctionne tjs pas.image
Je ne sais pas si je dois déplacer des fichiers ou si je dois ajouté une ligne de code pour lancer npm i sur le serveur???


6 Antworten ( Latest reply on 2021-03-25 14:08:01 Von
Francois76
)

C'est bon!!! Problème résolu.
Donc pour ceux qui utilisent express generator pour créer leurs apps et qui souhaite la mettre en ligne par FTP:
1- Passer le moteur d'exploitation en nodejs avec la config suivante:

2- Effacer les dossier créés par OVH (index.html, www et public qui existe déjà dans l'app en local).

3-Envoyer votre app comme elle est faite en local c'est à dire:
Mettre dans le dossier www (coté serveur) tous les dossiers et fichier de votre app (bin, node_module, public, views, routes, app.js...)

4-Il faut ensuite sortir le fichier www du dossier bin pour le mettre à la racine du dossier www (au niveau du fichier app.js)

5-Il faut modifier la première ligne de code du fichier www comme ci dessous:
var app = require('../app');---> ligne 3 par défaut.
var app = require('./app');---> ligne 3 modifiée.

Si vous le faite dans cette ordre (qui est clairement illogique car il vaut mieux faire toutes les modifs et envoyer une seule fois) pensez à renvoyer le ficher www sur le serveur après modifications.

Attention!!!! la modification du fichier www empêchera à votre app de fonctionner en local!

Salut @AhmedB10, oui moi j'ai mis les node_modules avec le reste. Dit moi si tu arrives à faire tourner ton projet. Et fais attention, tu dois vider le cache de ton navigateur après avoir fais une modif sur le serveur sinon la modif risque de ne pas fonctionner.

Salut @ThomasC20,
Je me permet d'apporter un léger correctif pour ton tuto, qui a eu le mérite de me redonner espoir d'y arriver ! C'est vrai que la documentation est vraiment limite côté OVH...
J'ai utilisé `express` pour mon app aussi, mais pas `express-generator` donc je n'ai pas ton problème de dossier et de sous-dossier.
Par contre, pour ce qui est du dossier `node_modules`, je ne l'ai pas uploadé en ftp parce que d'une part c'est très long, d'autre part ma connection saute tout le temps en ftp, je ne sais pas pourquoi. Du coup, j'ai enquêté un peu et j'ai vu qu'il fallait installer les dépendances en ssh. Pour faire ça, il faut :

* Aller dans son Espace Client > Hébergements > mon_hébergement > FTP - SSH (menu hamburger) et copier l'adresse SSH du site
* Sur Mac, il suffit de taper ensuite dans le terminal `$ ssh ssh://user@ssh-address:port/` et mettre le mot de passe (le même que pour le FTP), puis on est connecté au ssh
* Faire un joli `$ cd www`
* Puis `$ npm-node8 install` ( https://community.ovhcloud.com/community/fr/desespoirjs-web-cloud-1?id=community_question&sys_id=61dfa9c49dda4e901e11a21128f2cf48">cf source)

Et il me semble que c'est tout !

```text
ssh login@54.38.xx.yy:22
ssh: Could not resolve hostname 54.38.xx.yy:22: Name or service not known
```
sauf si le comportement sous mac est différent, le port c'est:
```text
ssh -p 22 login@54.38.xx.yy
```
ou si port standard 22
```text
ssh login@54.38.xx.yy
```

Est-ce que quelqu’un a réussi a déployer avec succès une app en mode SSR ? C'est juste l'**enfer** ce **manque de documentation chez OVH** !

Antworten sind derzeit für diese Frage deaktiviert.