Je pose ma webApp angulaire dans la production et je lis la documentation officielle que j'ai réalisée que j'ai besoin d'un serveur Web, est-ce le cas? Dans ce cas, lorsque je télécharge mon WebApp en ligne, nous devrons spécifier le port de l'URL? Par exemple www.mywebapp.com:4200 sinon, comment ça marche? Merci p>
3 Réponses :
À la suite de la compilation (bâtiment) Votre application angulaire Vous obtenez des fichiers statiques (HTML, CSS, JS) et ces fichiers doivent être hébergés et desservés, cela permettra à d'autres d'utiliser / consommer ceci. Certains choix populaires (pas tous) ici pourraient être Nginx ou Apache ou serveur moins de solution comme Heroku ou Amazon, etc. P>
Je vois beaucoup de confusion ici. Je vais expliquer aussi mieux que possible.
Lorsque vous serez l'application avec la commande La raison pour laquelle par défaut, le port est de 4200 est parce que probablement
Il n'y a pas d'autres applications utilisant ce port. P>
blockQuote> Lorsque vous créez votre application, le résultat est un dossier Etant donné que TypeScript est un code> Superset code> de JavaScript doit être compilé. Que ce que la construction fait, principalement. Donc, vous avez maintenant cette liste de fichiers prêts à être déployés. Voici la question que vous avez posée, Cela dépend. P>
blockQquote> Si l'application n'a pas besoin d'aller en ligne et ne fait pas d'appels HTTP du tout ou n'interagissez pas avec un backend / dB, vous pouvez simplement ouvrir le Si ce n'est pas votre cas, vous avez besoin d'un serveur Web. La raison est simple, chaque site est hébergé sur un serveur. Une machine avec une adresse publique publique pouvant être résolue partout (à l'exclusion des cas lorsque l'ISP national (fournisseur de services Internet) a coupé la connexion au début). P> prenons à titre d'exemple. Si vous tapez, dans le navigateur, Regardez ici: https://en.wikipedia.org/wiki/ List_of_tcp_and_udp_port_numbers p> Si vous faites défiler un bit un peu, vous verrez que le port Vous pouvez également configurer le pare-feu de votre serveur pour ne pas accepter de connexions sur le port 80 mais sur le port Vous avez également demandé: Que se passe-t-il s'il y a plus d'une application Web dans la
serveur? p>
BlockQuote> Vous avez deux choix, pour moi: p> 1) Chaque serveur Web utilise différents ports. Vous pouvez ensuite accéder à votre contenu spécifique à l'aide de différents ports sur demande: p> 2) Utilisez un Ce sujet est vraiment complexe mais prenons ceci comme exemple.
Vous avez trois sites différents que vous souhaitez héberger sur votre serveur. P> vous pourrait em> utiliser J'ai un ng serveur code> Vous êtes sur le point d'exécuter un serveur Web effectué localement dans Nodejs. Par défaut, il exécutoire sur le port
4200 code> mais vous pouvez le modifier à l'aide d'un drapeau:
ng servir --port 4567 code>. En faisant cela, vous n'atteinterez pas votre site si vous tapez
localhost: 4200 code> dans le navigateur, mais vous devez utiliser le port
4567 code> p>
dist code>, contenant une liste de fichiers. Tous ces fichiers peuvent être interprétés par le navigateur, tandis que le
*. TS code> ne le fait pas. P>
ai-je besoin d'un serveur Web? Code> p>
index.html code> directement. sur votre navigateur et cela fonctionnera bien. Par conséquent, aucun besoin d'utiliser un
Web-serveur code>. P>
www.stackoverflow.com code> vous atteindrez le site. Si vous tapez
www.stackoverflow.com:80 code> vous obtiendrez le même résultat. P>
80 code> est utilisé pour
http requêtes code>. C'est la norme, et tous les navigateurs par défaut, lorsque vous essayez de naviguer sur un site, utilisera ce port (pour la demande HTTPS. Le port passe à
443 code>, mais la logique est un peu identique). P>
12443 CODE> et mettre un serveur Web qui écoute sur ce port. Le résultat sera que si vous tapez
www.mysite.com code> Le navigateur vous donnera que l'erreur classique "ne peut pas rejoindre www.mysite.com". Mais si vous tapez
mysite.com:12443 code> vous obtiendrez le résultat recherché. Dans ce cas, le contenu du dossier dist. P>
inverse-proxy code> pour gérer toutes les demandes différentes de Un port spécifié (par défaut, 80 et 443 | HTTP et HTTPS). P>
docker code> avec
nginx code> (nginx est un serveur Web, comme IIS ou Apache) et
Nginx-proxy code> pour configurer le scénario parfait.
Je posterai du code que j'utilise personnellement sur mon VPS si une personne est interessée. P>
dockerfile code> pour construire le conteneur principal: P>
docker build -t my-site .
docker run -d -p 80:80 my-site
Techniquement, vous auriez besoin d'un service Lorsque vous choisissez d'utiliser un serveur Web, il pourrait être soit un serveur fort> dédié au serveur fort> ou à un serveur STRY> STRAND>. Vous utiliseriez un serveur fort> dédié strong> lorsque vous vous attendez à une grande quantité de trafic consommant une quantité élevée de CPU et d'utilisation de la mémoire. P>
Si vous hébergez un site de mise en scène ou de démonstration, vous pouvez utiliser un service STRAND> STARD STRAND>, où plusieurs sites hébergés / applications Web utilisent la même adresse Server / IP. En utilisant hôtes virtuels , le serveur peut déterminer pour quel domaine la requête est (par exemple my-webapp.com) et affichant l'application Web correcte. Ce n'est pas facile à configurer, mais il existe de nombreux services qui facilitent l'hébergement de plusieurs applications Web d'un serveur. Un exemple est Runcloud . P>
Vous pouvez également héberger votre application Web de Cloud Storage Services, comme Amazon S3 ou Microsoft Azure Stockage . Ceci est également idéal pour tirer parti des avantages des services de CDN. P>
Vous pouvez également utiliser un service comme Heroku pour gérer et héberger votre application Web. Voici un article pour commencer avec Angulaire et Heroku . P>
Avant de Déployer em> votre application Web à l'une de ces solutions ou d'autres solutions, vous devez construire / préparer votre application en utilisant le Construire processus. Assurez-vous d'examiner la documentation angulaire sur déploiement et payer Attention à la réécriture d'URL (pour les serveurs Web) ou aux exigences de secours pour l'hébergement statique. P> Hébergement H2>
Server Web h3>
Hébergement statique h3>
Heroku (et / ou autres) h3>
Bâtiment H1>
Oui, vous aurez besoin d'un serveur pour héberger et servir les fichiers. Non, vous n'avez pas besoin de définir le port, car vous servirez à partir de votre dossier public de serveurs (très probablement) et sur le port par défaut pour HTTP, le port 80 ou le port HTTPS par défaut 443 au cas où vous auriez un certificat SSL qui Vous utiliserez.
Que se passe-t-il s'il y a plus d'une application Web sur le serveur?
Ils devraient vivre dans des dossiers séparés et être accessibles à partir de différents itinéraires de serveurs (URL)
ok je comprends, merci pour vos réponses