Maison > Article > Opération et maintenance > Comment utiliser cPanel pour configurer le proxy inverse Nginx dans CentOS 7
cPanel est actuellement le système de contrôle d'hôte virtuel le plus puissant, le plus simple à utiliser et le plus populaire au monde. De nombreux hôtes étrangers utilisent ce panneau de contrôle.
Tout d'abord, nous devons installer la bibliothèque EPEL pour démarrer ce processus
Étape 1 : Installer la bibliothèque EPEL
root@server1 [/usr]# yum -y install epel-releaseLoaded plugins: fastestmirror, tsflags, universal-hooks Loading mirror speeds from cached hostfile * EA4: 66.23.237.210 * base: mirrors.linode.com * extras: mirrors.linode.com * updates: mirrors.linode.com Resolving Dependencies --> Running transaction check ---> Package epel-release.noarch 0:7-5 will be installed --> Finished Dependency Resolution Dependencies Resolved ======================================================================================== Package Arch Version Repository Size ======================================================================================== Installing: epel-release noarch 7-5 extras 14 k
root@server1 [/usr]# yum -y install http://rpm.piserve.com/nDeploy-release-centos-1.0-1.noarch.rpmLoaded plugins: fastestmirror, tsflags, universal-hooks nDeploy-release-centos-1.0-1.noarch.rpm | 1.7 kB 00:00:00 Examining /var/tmp/yum-root-ei5tWJ/nDeploy-release-centos-1.0-1.noarch.rpm: nDeploy-release-centos-1.0-1.noarch Marking /var/tmp/yum-root-ei5tWJ/nDeploy-release-centos-1.0-1.noarch.rpm to be installed Resolving Dependencies --> Running transaction check ---> Package nDeploy-release-centos.noarch 0:1.0-1 will be installed --> Finished Dependency Resolution Dependencies Resolved ======================================================================================== Package Arch Version Repository Size ======================================================================================== Installing: nDeploy-release-centos noarch 1.0-1 /nDeploy-release-centos-1.0-1.noarch 110
Étape 3 : Installez nDeploy et le plug-in Nginx nDeploy
root@server1 [/usr]# yum --enablerepo=ndeploy install nginx-nDeploy nDeployLoaded plugins: fastestmirror, tsflags, universal-hooks epel/x86_64/metalink | 9.9 kB 00:00:00 epel | 4.3 kB 00:00:00 ndeploy | 2.9 kB 00:00:00 (1/4): ndeploy/7/x86_64/primary_db | 14 kB 00:00:00 (2/4): epel/x86_64/group_gz | 169 kB 00:00:00 (3/4): epel/x86_64/primary_db | 3.7 MB 00:00:02 Dependencies Resolved ======================================================================================== Package Arch Version Repository Size ======================================================================================== Installing: nDeploy noarch 2.0-11.el7 ndeploy 80 k nginx-nDeploy x86_64 1.8.0-34.el7 ndeploy 36 M Installing for dependencies: PyYAML x86_64 3.10-11.el7 base 153 k libevent x86_64 2.0.21-4.el7 base 214 k memcached x86_64 1.4.15-9.el7 base 84 k python-inotify noarch 0.9.4-4.el7 base 49 k python-lxml x86_64 3.2.1-4.el7 base 758 k Transaction Summary ======================================================================================== Install 2 Packages (+5 Dependent packages)
Nous avons installé le plug-in Nginx sur notre serveur et terminé l'installation selon les étapes ci-dessus . Nous pouvons maintenant configurer Nginx comme proxy inverse et créer un hôte virtuel pour le compte utilisateur cPanel existant, pour lequel nous pouvons exécuter le script suivant.
Étape 4 : Démarrez Nginx en tant que serveur Web frontal par défaut et créez le fichier de configuration par défaut
root@server1 [/usr]# /opt/nDeploy/scripts/cpanel-nDeploy-setup.sh enableModifying apache http and https port in cpanel httpd restarted successfully. Created symlink from /etc/systemd/system/multi-user.target.wants/nginx.service to /usr/lib/systemd/system/nginx.service. Created symlink from /etc/systemd/system/multi-user.target.wants/ndeploy_watcher.service to /usr/lib/systemd/system/ndeploy_watcher.service. Created symlink from /etc/systemd/system/multi-user.target.wants/ndeploy_backends.service to /usr/lib/systemd/system/ndeploy_backends.service. ConfGen:: saheetha ConfGen:: satest
Vous pouvez voir que ce script modifiera le port Apache de 80 vers un autre port pour permettre à Nginx d'agir en tant que serveur Web frontal. -end serveur Web et créez un profil d'hébergement virtuel pour les utilisateurs cPanel existants. Une fois terminé, confirmez l'état d'Apache et de Nginx.
Statut Apache :
root@server1 [/var/run/httpd]# systemctl status httpd● httpd.service - Apache Web Server Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; vendor preset: disabled) Active: active (running) since Mon 2016-01-18 06:34:23 UTC; 12s ago Process: 25606 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS) Main PID: 24760 (httpd) CGroup: /system.slice/httpd.service ‣ 24760 /usr/local/apache/bin/httpd -k start Jan 18 06:34:23 server1.centos7-test.com systemd[1]: Starting Apache Web Server... Jan 18 06:34:23 server1.centos7-test.com apachectl[25606]: httpd (pid 24760) already running Jan 18 06:34:23 server1.centos7-test.com systemd[1]: Started Apache Web Server.
Statut Nginx :
root@server1 [~]# systemctl status nginx● nginx.service - nginx-nDeploy - high performance web server Loaded: loaded (/usr/lib/systemd/system/nginx.service; enabled; vendor preset: disabled) Active: active (running) since Sun 2016-01-17 17:18:29 UTC; 13h ago Docs: http://nginx.org/en/docs/ Main PID: 3833 (nginx) CGroup: /system.slice/nginx.service ├─ 3833 nginx: master process /usr/sbin/nginx -c /etc/nginx/nginx.conf ├─25473 nginx: worker process ├─25474 nginx: worker process └─25475 nginx: cache manager process Jan 17 17:18:29 server1.centos7-test.com systemd[1]: Starting nginx-nDeploy - high performance web server... Jan 17 17:18:29 server1.centos7-test.com nginx[3804]: nginx: the configuration file /etc/nginx/nginx.conf syntax is ok Jan 17 17:18:29 server1.centos7-test.com nginx[3804]: nginx: configuration file /etc/nginx/nginx.conf test is successful Jan 17 17:18:29 server1.centos7-test.com systemd[1]: Started nginx-nDeploy - high performance web server.
Nginx s'exécute sur le port 80 en tant que serveur frontal et la configuration Apache a été modifiée pour écouter sur le port http 9999 et le port https 4430. Veuillez jeter un œil à leur situation :
root@server1 [/usr/local/src]# netstat -plan | grep httpdtcp 0 0 0.0.0.0:4430 0.0.0.0:* LISTEN 17270/httpd tcp 0 0 0.0.0.0:9999 0.0.0.0:* LISTEN 17270/httpd tcp6 0 0 :::4430 :::* LISTEN 17270/httpd tcp6 0 0 :::9999 :::* LISTEN 17270/httpd
root@server1 [/usr/local/src]# netstat -plan | grep nginxtcp 0 0 127.0.0.1:80 0.0.0.0:* LISTEN 17802/nginx: master tcp 0 0 45.79.183.73:80 0.0.0.0:* LISTEN 17802/nginx: master
Le fichier de configuration de l'hôte virtuel créé pour un utilisateur existant se trouve dans "/etc/nginx/sites-enabled". Ce chemin de fichier contient les principaux fichiers de configuration de Nginx.
root@server1 [/etc/nginx/sites-enabled]# ll | grep .conf-rw-r--r-- 1 root root 311 Jan 17 09:02 saheetha.com.conf-rw-r--r-- 1 root root 336 Jan 17 09:02 saheethastest.com.conf
Exemple d'hôte virtuel pour un nom de domaine :
server { listen 45.79.183.73:80;#CPIPVSIX:80;# ServerNamesserver_name saheetha.com www.saheetha.com; access_log /usr/local/apache/domlogs/saheetha.com main; access_log /usr/local/apache/domlogs/saheetha.com-bytes_log bytes_log; include /etc/nginx/sites-enabled/saheetha.com.include; }
Nous pouvons démarrer le navigateur pour afficher le site Web afin de déterminer l'état de fonctionnement du serveur Web. Après l'installation, lisez les informations du service Web sur le serveur.
root@server1 [/home]# ip a | grep -i eth03: eth0: mtu 1500 qdisc pfifo_fast state UP qlen 1000 inet 45.79.183.73/24 brd 45.79.183.255 scope global dynamic eth0 root@server1 [/home]# nginx -vnginx version: nginx/1.8.0
Réécrivez cette phrase pour obtenir : Pour tous les comptes nouvellement créés dans cPanel, Nginx créera des hôtes virtuels pour eux. Avec ces étapes simples, nous pouvons configurer Nginx comme proxy inverse sur un serveur CentOS 7/cPanel.
Avantages de Nginx en tant que proxy inverse
Facile à installer et à configurer.
Haute efficacité et bonnes performances.
Prévenez les attaques Ddos.
Prise en charge de l'utilisation de .htaccess comme règles de réécriture pour PHP.
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!