Comment installer et déployer Nginx dans Centos6.5 64 bits
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
5. 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.
如果防火墙你依然启用,只是设置了启用端口,那我们访问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!

Outils d'IA chauds

Undress AI Tool
Images de déshabillage gratuites

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

1. Le premier choix pour la combinaison Laravel Mysql Vue / React dans la communauté de questions et réponses de développement PHP est le premier choix pour la combinaison Laravel Mysql Vue / React, en raison de sa maturité dans l'écosystème et de l'efficacité de développement élevée; 2. Les performances élevées nécessitent une dépendance à la cache (redis), une optimisation de la base de données, des files d'attente CDN et asynchrones; 3. La sécurité doit être effectuée avec le filtrage d'entrée, la protection CSRF, les HTTP, le cryptage de mot de passe et le contrôle d'autorisation; 4. Publicité facultative, abonnement aux membres, récompenses, commissions, paiement des connaissances et autres modèles, le noyau est de faire correspondre le ton communautaire et les besoins des utilisateurs.

Lorsque Nginx connaît une erreur "ToomyOpenFiles", c'est généralement parce que le système ou le processus a atteint la limite du descripteur de fichier. Les solutions incluent: 1. Augmenter les limites douces et dures du système Linux, définir les paramètres pertinents de Nginx ou exécuter les utilisateurs dans /etc/security/limits.conf; 2. Ajustez la valeur Worker_Connections de Nginx pour s'adapter au trafic attendu et assurer la configuration surchargée; 3. Augmentez la limite supérieure des descripteurs de fichiers au niveau du système fs.file-max, edit /etc/sysctl.conf et appliquez des modifications; 4. Optimiser l'utilisation du journal et des ressources et réduisez l'utilisation de la poignée des fichiers inutile, comme l'utilisation d'Open_L

Le rôle principal de Homebrew dans la construction de l'environnement Mac est de simplifier l'installation et la gestion des logiciels. 1. Homebrew gère automatiquement les dépendances et encapsule les processus de compilation et d'installation complexes en commandes simples; 2. Fournit un écosystème de package logiciel unifié pour assurer la normalisation de l'emplacement et de la configuration de l'installation logicielle; 3. Intègre les fonctions de gestion des services et peut facilement démarrer et arrêter les services via BrewServices; 4. Mise à niveau et maintenance des logiciels pratiques et améliore la sécurité et les fonctionnalités du système.

La clé pour mettre à jour le noyau CentOS est d'utiliser le référentiel ELREPO et de configurer correctement les éléments de démarrage. 1. Exécutez d'abord uname-R pour afficher la version actuelle du noyau; 2. Installez le référentiel ELREPO et importez la clé; 3. Utilisez YUM pour installer Kernel-LT (version de support à long terme) ou Kernel-ML (version principale); 4. Une fois l'installation terminée, vérifiez les noyaux disponibles via la commande awk et utilisez GRUB2-Set-Default pour définir l'élément de démarrage par défaut; 5. Générez un nouveau fichier de configuration GRUB GRUB2-MKCONFIG-O / BOOT / GRUB2 / GRUB.CFG; 6. Redémarrez enfin le système et exécutez à nouveau uname-R pour confirmer si la version du noyau est efficace. L'ensemble du processus nécessite

Pour activer la prise en charge HTTP / 2 ou HTTP / 3 de Nginx, les conditions préalables doivent être respectées et configurées correctement; HTTP / 2 nécessite Nginx1.9.5, OpenSSL1.0.2 et l'environnement HTTPS; Ajouter le module --avec-http_v2_module lors de la configuration, modifiez l'instruction d'écoute à écouter443ssslhttp2; et surcharger le service; HTTP / 3 est basé sur la quic, et des modules tiers tels que Nginx-Quic sont nécessaires pour introduire des branches BoringSSL ou OpenSSLQUIC pendant la compilation et configurer les ports d'écoute UDP; Les problèmes courants pendant le déploiement incluent l'ALPN non activé, le certificat incompatible, les restrictions de pare-feu et les erreurs de compilation, il est recommandé d'utiliser la priorité

Dans la configuration de Nginx, les symboles @ dans le bloc d'emplacement sont utilisés pour définir les emplacements nommés. Ceux-ci sont des points de terminaison utilisés en interne et ne peuvent pas être appariés directement par la demande du client. Ils sont généralement appelés via les directives error_page, try_files ou réécrivent. 1. L'emplacement de dénomination commence par @. Par exemple, Emplacement @ NotFound ne répondra pas aux demandes directes, mais déclenchera à partir d'autres pièces de configuration; 2. Il est souvent utilisé pour la gestion des erreurs personnalisée, le routage interne et le support d'agent backend; 3. Par exemple, combiné avec Try_Files, transférant à @backend lorsque les fichiers statiques n'existent pas; 4. Les notes incluent: non directement accessible, éviter les conflits de nommage et utiliser des noms descriptifs. Les emplacements nommés peuvent inclure

L'installation et la configuration de Fail2ban sur CentOS ne sont pas compliquées, il comprend principalement les étapes suivantes: 1. Installer Fail2ban à l'aide de YUM; 2. Activer manuellement et démarrer le service; 3. Créez un fichier Jail.local pour la configuration personnalisée; 4. Définir les règles de défense SSH, y compris l'activation de SSHD, spécifiant le temps de blocage et les heures de réessayer; 5. Configurer le Firewalld en tant qu'actionneur d'action; 6. Vérifiez régulièrement l'IP et les journaux de blocage. Fail2ban détecte un comportement de connexion anormal grâce à la surveillance des journaux et bloque automatiquement les IP suspects. Son mécanisme central repose sur des paramètres clés tels que Bantime (temps interdit), Findtime (Temps de fenêtre statistique) et Maxretry (numéro de défaillance maximum).

Identifier Thenewdiskusinglsblkorfdisk-ltolocateThecorrectDevicelike / Dev / sdb.22.OptionallyPartitionTheDiskwithfdisk / Dev / sdb, CreateAprimaryPartitionusingDefaultSttingSe etwriteCheswithW, TherunPartitiondUpToupDateTheNernel.3.3CareafilesystemusingMfsxEplepdateTheLenel.3.3
