Maison > Opération et maintenance > Nginx > Comment utiliser Nginx pour transférer le port 80 vers le port 8080 sur Mac

Comment utiliser Nginx pour transférer le port 80 vers le port 8080 sur Mac

WBOY
Libérer: 2023-05-11 21:49:16
avant
1724 Les gens l'ont consulté

Environnement

version mac os : 10.12.6
version nginx : 1.12.1

Installation

L'auteur utilise homebrew pour installer la bibliothèque

brew search nginx
brew install nginx
Copier après la connexion

Après l'avoir installé comme ça, vous constaterez que l'écoute Le port de nginx est 8080, pas 80, alors vous devez changer le port d'écoute de nginx à ce moment-là. Cette étape est très critique et ne peut pas être modifiée de la manière traditionnelle. Lecteurs, veuillez lire attentivement cette partie.
Étant donné que Mac OS est livré avec son propre service Apache, il occupe le port 80. Tout d'abord, vous devez changer le port d'écoute d'Apache par un autre ou le désinstaller directement. L'auteur a changé son port d'écoute en 8011.

Ligne de commande

sudo vim /etc/apache2/httpd.confsudo vim /etc/apache2/httpd.conf

图片中红色框打开原本是80端口,作者已将其改为8011。

Comment utiliser Nginx pour transférer le port 80 vers le port 8080 sur Mac
apache_conf.png

改动之后,将其重启 sudo /usr/sbin/apachectl restart
到这里,你已经将80端口释放掉了。

其次你需要了解的就是plist文件。plist就是property list format的意思,是苹果用来保存应用数据的格式,其实就是个xml。可以在/usr/local/opt/nginx 下找到nginx对应的plist文件,比如在作者电脑上是 homebrew.mxcl.nginx.plist 。
它的内容如下:

<?xml version="1.0" encoding="utf-8"?>
<!doctype plist public "-//apple//dtd plist 1.0//en" "http://www.apple.com/dtds/propertylist-1.0.dtd">
<plist version="1.0">
<dict>
<key>label</key>
<string>homebrew.mxcl.nginx</string>
<key>runatload</key>
<true/>
<key>keepalive</key>
<false/>
<key>programarguments</key>
<array>
<string>/usr/local/opt/nginx/bin/nginx</string>
<string>-g</string>
<string>daemon off;</string>
</array>
<key>workingdirectory</key>
<string>/usr/local</string>
</dict>
</plist>
Copier après la connexion

需要把这个文件复制到 /library/launchdaemons 下,如果是 ~/library/launchagents 也可以,但两者有区别。
前者是系统启动时启动,后者则是在用户登录时启动。 接着执行launchctl load -w,如下:

sudo cp /usr/local/opt/nginx/*.plist /library/launchdaemons
sudo launchctl load -w /library/launchdaemons/homebrew.mxcl.nginx.plist

最后,重启你的机器,你会发现nginx在80端口启动了,试着通过http://localhost直接访问,若出现下边图片的显示则意味着你的nginx的80端口已经配置完成,意味着你已经完成了六成的工作。

Comment utiliser Nginx pour transférer le port 80 vers le port 8080 sur Mac

如果你tomcat的端口是8080,此时你便要启动它,之所以在此时启动tomcat是为了先让tomcat占用8080端口,因为在后面配置nginx转发时需要配置8080端口的转发,为了在那个时候不被nginx抢先占用8080端口(这里也可以不启动tomcat,只要你在配置好nginx转发配置后不要立刻启动nginx服务即可,因为启动它便直接占用8080端口实现转发,而这时其实你还未使用8080端口)导致tomcat的启动的失败,因此可以先让tomcat占用端口而后在进行nginx对8080端口的映射转发。
此时你的tomcat已经启动好了,此时我们开始配置nginx的转发配置:

命令行

sudo vim /usr/local/etc/nginx/nginx.conf<br>

La boîte rouge sur l'image ouvrait à l'origine le port 80, mais l'auteur l'a remplacé par 8011.

Comment utiliser Nginx pour transférer le port 80 vers le port 8080 sous Mac Comment utiliser Nginx pour transférer le port 80 vers le port 8080 sur Macapache_conf .png

Après avoir apporté des modifications, redémarrez-le sudo /usr/sbin/apachectl restart

À ce stade, vous avez libéré le port 80.

La prochaine chose que vous devez savoir est le fichier plist. plist signifie format de liste de propriétés. C'est le format utilisé par Apple pour enregistrer les données d'application. Il s'agit en fait de XML. Le fichier plist correspondant à nginx se trouve sous /usr/local/opt/nginx, par exemple, il s'agit de homebrew.mxcl.nginx.plist sur l'ordinateur de l'auteur.

Son contenu est le suivant :

rrreee

Vous devez copier ce fichier dans /library/launchdaemons. S'il s'agit de ~/library/launchagents, c'est également OK, mais il y a une différence entre les deux.

Le premier est démarré au démarrage du système et le second est démarré lorsque l'utilisateur se connecte. Ensuite, exécutez launchctl load -w, comme suit :

sudo cp /usr/local/opt/nginx/*.plist /library/launchdaemons

sudo launchctl load -w /library/launchdaemons/homebrew.mxcl.nginx.plist

Enfin, redémarrez votre machine et vous constaterez que nginx est démarré sur le port 80. Essayez d'y accéder directement via http://localhost Si l'image ci-dessous apparaît, cela signifie que le port 80 de votre nginx a été configuré, ce qui signifie. que vous avez Soixante pour cent du travail a été terminé.


Comment utiliser Nginx pour transférer le port 80 vers le port 8080 sous Mac

Si le port de votre Tomcat est 8080, vous devez le démarrer à ce moment-là. La raison pour laquelle vous démarrez Tomcat à ce moment-là est de laisser Tomcat occuper le port 8080 en premier, car vous devez configurer le transfert du 8080. port lors de la configuration ultérieure du transfert nginx. Pour le moment, nginx n'occupera pas de manière préventive le port 8080 (vous ne pouvez pas non plus démarrer Tomcat ici, tant que vous ne démarrez pas le service nginx immédiatement après avoir configuré la configuration du transfert nginx, car le démarrer occupera directement le port 8080 pour le transfert, et à ce moment-là, vous l'avez toujours (le port 8080 n'est pas utilisé) entraîne l'échec du démarrage de Tomcat. Par conséquent, vous pouvez d'abord laisser Tomcat occuper le port, puis effectuer le mappage nginx et. redirection du port 8080.

À ce stade, votre Tomcat a été démarré. Nous commençons maintenant à configurer la configuration de transfert de nginx :


Ligne de commande

sudo vim /usr/local/etc/nginx/nginx.conf<br>

Vous n'avez qu'à vous soucier de la configuration dans le nœud du serveur🎜🎜🎜🎜nginx_conf.png🎜🎜🎜Le nœud sous le serveur : 🎜🎜listen : écouter le port 80 🎜server_name : à quelle adresse transférer 🎜proxy_pass : lequel adresse vers laquelle proxy 🎜 🎜Une fois plusieurs configurations terminées, nous redémarrerons nginx (pour redémarrer, vous devez basculer vers le répertoire nginx) sudo /usr/local/cellar/nginx/1.12.1/bin/nginx -s reload🎜 🎜Toutes les opérations ici Tout est terminé. Vous et les autres partenaires du même segment de réseau pouvez désormais accéder à votre projet Tomcat en accédant directement à l'adresse IP/. 🎜🎜Opérations de commande associées, commande Apache🎜🎜Arrêtez le service : sudo /usr/sbin/apachectl stop🎜Démarrez le service : sudo /usr/sbin/apachectl start🎜Redémarrez le service : sudo /usr/sbin/apachectl restart🎜🎜nginx commande (nécessite Exécuter dans le répertoire nginx, répertoire :/usr/local/cellar/nginx/1.12.1/bin/)🎜🎜Ouvrir : sudo nginx🎜Redémarrer : sudo nginx -s reload🎜Fermer🎜Tout d'abord, interrogez le fichier principal nginx numéro de processus (Processus avec le logo principal) : ps -ef|grep nginx🎜Arrêtez normalement sudo kill -quit ID du processus principal🎜Arrêtez rapidement sudo kill -term ID du processus principal🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:yisu.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal