Je suppose que vous créez une application web car vous faites référence à Apache et Node. Réponse rapide - Est-ce possible - OUI. Est-ce recommandé - NON. Node intègre son propre serveur web et la plupart des sites web fonctionnent sur le port 80. Je suppose également qu'il n'y a pas actuellement de plugin Apache qui est pris en charge par Nodejs et je ne suis pas sûr que la création d'un hôte virtuel est la meilleure façon de mettre en œuvre cela. Ce sont les questions qui devraient être répondues par les développeurs qui maintiennent Nodejs comme les bonnes gens de Joyent.
Au lieu des ports, il serait préférable d'évaluer la pile technologique de Node qui est complètement différente de la plupart des autres et qui est la raison pour laquelle je l'aime mais elle implique également quelques compromis dont vous devez être conscient à l'avance.
Votre exemple ressemble à un CMS ou à une application web de partage et il existe des centaines d'applications prêtes à l'emploi qui fonctionnent parfaitement avec Apache. Même si vous n'aimez pas les solutions prêtes à l'emploi, vous pouvez écrire une application web en PHP / Java / Python ou la combiner avec quelques applications prêtes à l'emploi, et elles sont toutes conçues et supportées pour fonctionner derrière une seule instance d'Apache.
Il est temps de faire une pause et de réfléchir à ce que je viens de dire.
Vous êtes maintenant prêt à décider de la techstack que vous allez utiliser. Si votre site web n'utilisera jamais aucune des milliers d'applications prêtes à l'emploi qui nécessitent Apache, alors optez pour Node, sinon vous devez d'abord éliminer les hypothèses que j'ai énoncées précédemment.
En fin de compte, le choix de votre techstack est bien plus important que n'importe quel composant individuel.
Je suis tout à fait d'accord avec @Straseus sur le fait qu'il est relativement trivial d'utiliser l'api du système de fichiers node.js pour gérer les chargements et les téléchargements, mais réfléchissez davantage à ce que vous attendez de votre site Web à long terme et choisissez ensuite votre technologie.
Apprendre le cadre de Node est plus facile que d'apprendre d'autres cadres, mais ce n'est pas une panacée. Avec un peu plus d'effort (ce qui peut être un effort valable en soi), vous pouvez aussi apprendre n'importe quel autre framework. Nous apprenons tous les uns des autres et vous serez plus productif si vous travaillez en petite équipe que si vous travaillez seul et vos compétences techniques backend se développeront également plus rapidement. Par conséquent, ne sous-estimez pas les compétences des autres membres de votre équipe.
Ce post date d'environ un an et il y a de fortes chances que vous ayez déjà pris votre décision, mais j'espère que mon coup de gueule aidera la prochaine personne qui doit prendre une décision similaire.
Merci de votre lecture.