1. Introduction à nginx
nginx est un serveur Web qui peut également être utilisé pour l'équilibrage de charge et le proxy inverse. Le plus couramment utilisé à l'heure actuelle est l'équilibrage de charge.
2. Installation de nginx
1. Téléchargez nginx et les composants associés
Le système Linux est centos 6.5 64 bits. Je suis directement passé à l'utilisateur root pour installer
Entrez le répertoire utilisateur pour télécharger le. programme
Téléchargez les composants concernés
[root@localhost src]# wget http://nginx.org/download/nginx-1.10.2.tar.gz 省略安装内容... [root@localhost src]# wget http://www.openssl.org/source/openssl-fips-2.0.10.tar.gz 省略安装内容... [root@localhost src]# wget http://zlib.net/zlib-1.2.11.tar.gz 省略安装内容... [root@localhost src]# wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.40.tar.gz 省略安装内容...
Installez l'environnement de compilation C++ S'il est déjà installé, vous pouvez l'ignorer
[root@localhost src]# yum install gcc-c++ 省略安装内容... 期间会有确认提示输入y回车 is this ok [y/n]:y 省略安装内容...
2 Installez nginx et les composants associés
installation d'openssl
[root@localhost src]# tar zxvf openssl-fips-2.0.10.tar.gz 省略安装内容... [root@localhost src]# cd openssl-fips-2.0.10 [root@localhost openssl-fips-2.0.10]# ./config && make && make install 省略安装内容...
installation de pcre
[root@localhost src]# tar zxvf pcre-8.40.tar.gz 省略安装内容... [root@localhost src]# cd pcre-8.40 [root@localhost pcre-8.40]# ./configure && make && make install 省略安装内容...
installation de zlib
[root@localhost src]# tar zxvf zlib-1.2.11.tar.gz 省略安装内容... [root@localhost src]# cd zlib-1.2.11 [root@localhost zlib-1.2.11]# ./configure && make && make install 省略安装内容...
installation de nginx
[root@localhost src]# tar zxvf nginx-1.10.2.tar.gz 省略安装内容... [root@localhost src]# cd nginx-1.10.2 [root@localhost nginx-1.10.2]# ./configure && make && make install 省略安装内容...
3. Démarrez nginx
Découvrez d'abord où nginx est installé
Entrez le répertoire nginx et démarrez-le
Une erreur est signalée, erreur pendant chargement des bibliothèques partagées : libpcre.so.1 : impossible d'ouvrir le fichier objet partagé : aucun fichier ou répertoire de ce type, résolvez-le comme suit
1.用whereis libpcre.so.1命令找到libpcre.so.1在哪里 2.用ln -s /usr/local/lib/libpcre.so.1 /lib64命令做个软连接就可以了 3.用sbin/nginx启动nginx 4.用ps -aux | grep nginx查看状态 [root@localhost nginx]# whereis libpcre.so.1 [root@localhost nginx]# ln -s /usr/local/lib/libpcre.so.1 /lib64 [root@localhost nginx]# sbin/nginx [root@localhost nginx]# ps -aux | grep nginx
Entrez dans l'interface graphique du système Linux, ouvrez le navigateur et entrez localhost et vous obtiendrez voir l'image suivante, indiquant que nginx a démarré avec succès
Opérations de base de nginx
启动 [root@localhost ~]# /usr/local/nginx/sbin/nginx 停止/重启 [root@localhost ~]# /usr/local/nginx/sbin/nginx -s stop(quit、reload) 命令帮助 [root@localhost ~]# /usr/local/nginx/sbin/nginx -h 验证配置文件 [root@localhost ~]# /usr/local/nginx/sbin/nginx -t 配置文件 [root@localhost ~]# vim /usr/local/nginx/conf/nginx.conf
4 Configuration simple de nginx
Ouvrez le fichier de configuration nginx situé dans le dossier conf du répertoire nginx
.
Une brève introduction à la syntaxe de vim
Par défaut, vim ne peut pas être saisi après son ouverture, et vous devez appuyer sur la touche Les opérations sont les suivantes : Démarrer l'édition : Appuyez sur la touche "i" ou "insérer" pour quitter l'édition : touche "esc" pour quitter vim : ":q" enregistrer vim : ":w" enregistrer et quitter vim : ":wq" quitter vim sans enregistrer : ":q!"
"#" représente les commentaires. La chose la plus importante est que le bloc server{} représente chaque site Web. Pour une introduction détaillée de la configuration, vous pouvez consulter mon autre article de configuration Ici, nous l'avons configuré temporairement. Les trois sites
utilisent des ports 80 différents. 81 et 82 respectivement. Enregistrez, quittez et redémarrez nginx5. Activez l'accès au réseau externe
Dans le système Linux, il existe un pare-feu appartenant au gestionnaire iptables par défaut, uniquement le port distant par défaut. le port de connexion 22 est activé et les autres sont fermés. Les 80 et ainsi de suite que nous avons définis ci-dessus sont également fermés, nous devons donc d'abord ouvrir le port de l'applicationMéthode 1Fermez directement le pare-feu, qui a de meilleures performances mais est plus sûr. Les performances sont médiocres. Si vous disposez d'un pare-feu frontal, vous pouvez utiliser cette méthode
关闭防火墙 [root@localhost ~]# service iptables stop 关闭开机自启动防火墙 [root@localhost ~]# chkconfig iptables off [root@localhost ~]# chkconfig --list|grep ipt
Méthode 2Ajoutez le port ouvert à la liste blanche du pare-feu. Cette méthode est plus sûre mais les performances sont relativement médiocres
编辑防火墙白名单 [root@localhost ~]# vim /etc/sysconfig/iptables 增加下面一行代码 -a input -p tcp -m state -- state new -m tcp --dport 80 -j accept 保存退出,重启防火墙 [root@localhost ~]# service iptables restart
La configuration Linux est terminée. Utilisez un autre ordinateur à la place de l'ordinateur sur lequel nginx est installé. J'utilise un système Windows Configurez l'hôte et configurez la redirection du nom de domaine dans les hôtes sous "c:windowssystem32driversetc" 10.11. .13.22 nginx.test.com nginx.test1.com nginx.test2.comEnsuite, cmd et pingez à nouveau le nom de domaine pour voir s'il pointe correctement vers cette IPAprès qu'il ait été correctement pointé, envoyez un telnet à port 80 pour voir s'il peut communiquer avec le port (si telnet indique qu'une telle commande n'existe pas, le client n'est pas installé. Installez-le simplement après avoir activé ou désactivé la fonction Windows) Obtenez l'interface suivante et elle signifie que la communication est réussieOuvrez ce système Windows Dans le navigateur, entrez nginx.test.com et vous obtiendrez les résultats suivants, ce qui signifie que l'accès au réseau externe est réussi
如果防火墙你依然启用,只是设置了启用端口,那我们访问81那个端口会发现无法访问,因为我并没有加入白名单
到此nginx服务器雏形部署完成。
6、nginx负载均衡配置
nginx集反向代理和负载均衡于一身,在配置文件中修改配就可以实现
首先我们打开配置文件
[root@localhost nginx]# vim conf/nginx.conf
每一个server就是一个虚拟主机,我们有一个当作web服务器来使用
listen 80;代表监听80端口 server_name xxx.com;代表外网访问的域名 location / {};代表一个过滤器,/匹配所有请求,我们还可以根据自己的情况定义不同的过滤,比如对静态文件js、css、image制定专属过滤 root html;代表站点根目录 index index.html;代表默认主页
这样配置完毕我们输入域名就可以访问到该站点了。
负载均衡功能往往在接收到某个请求后分配到后端的多台服务器上,那我们就需要upstream{}块来配合使用
upstream xxx{};upstream模块是命名一个后端服务器组,组名必须为后端服务器站点域名,内部可以写多台服务器ip和port,还可以设置跳转规则及权重等等 ip_hash;代表使用ip地址方式分配跳转后端服务器,同一ip请求每次都会访问同一台后端服务器 server;代表后端服务器地址 server{};server模块依然是接收外部请求的部分 server_name;代表外网访问域名 location / {};同样代表过滤器,用于制定不同请求的不同操作 proxy_pass;代表后端服务器组名,此组名必须为后端服务器站点域名 server_name和upstream{}的组名可以不一致,server_name是外网访问接收请求的域名,upstream{}的组名是跳转后端服务器时站点访问的域名
配置一下windows的host将我们要访问的域名aaa.test.com指向linux
因为硬件有限,我是将windows中的iis作为nginx的后端服务器,所以配置一下iis的站点域名
打开cmd再ping一下aaa.test.com确实指向linux系统了,再打开浏览器输入aaa.test.com会显示bbb这个站点就代表负载成功了。
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!