Maison  >  Article  >  Tutoriel système  >  Original : Compilation du code source Centos 7 et installation de Nginx 1.13

Original : Compilation du code source Centos 7 et installation de Nginx 1.13

PHPz
PHPzoriginal
2024-07-16 21:18:31755parcourir

Je n'entrerai pas dans l'introduction pertinente de nginx. Puisque vous choisissez nginx comme serveur Web, vous devez avoir des connaissances et une compréhension différentes du serveur nginx. Ensuite, je vais l'installer directement.

原创:Centos 7 源码编译安装 Nginx 1.13

Prérequis

J'utilise le système de version de base centos7.3 64 bits. Avant d'installer et de configurer nginx, vous devez installer le package de dépendances nginx. Veuillez consulter le chapitre de production de la compilation Centos 7 et de l'installation de php7.1, et installer le package de dépendances. fourni au début de l’article. Ce package de composants dépendants convient à n’importe quelle version de Nginx.

Créer de nouveaux utilisateurs et groupes Web

$ /usr/sbin/groupadd www
$ /usr/sbin/useradd -g www www
$ ulimit -SHn 65535 //设置linux高负载参数
Téléchargez Nginx et OpenSSL depuis le site officiel

Il existe deux versions lors du téléchargement de Nginx : la version de développement et la version stable. S'il est utilisé pour la production, téléchargez la version stable, http://nginx.org/en/download.html (il est préférable de télécharger la dernière version de. la version stable, donc il y aura des corrections de bugs et de nouvelles fonctionnalités) J'ai téléchargé la dernière version nginx-1.13.5.

$ cd /tmp
$ wget https://www.openssl.org/source/openssl-1.1.0e.tar.gz
$ tar zxvf openssl-1.1.0e.tar.gz
$ wget https://nginx.org/download/nginx-1.13.5.tar.gz
$ tar zxvf nginx-1.13.5.tar.gz
$ cd nginx-1.13.5
Installer Nginx

Vous remarquerez peut-être que certains didacticiels de documents n'attribuent pas autant de modules lors de l'installation de nginx (cela semble très long), et certains n'attribuent même pas de modules et d'utilisateurs. En fait, les modules sont attribués en fonction de leurs propres besoins. il n'y a aucun problème à l'avenir, alors suivez simplement l'affectation du module ci-dessous. En fait, cela est considéré comme tout-en-un, sinon vous devrez le recompiler plus tard si vous en avez besoin. ce n'est pas facile non plus. Quant à savoir s'il faut attribuer des groupes d'utilisateurs, je vous laisserai certainement le faire. Cela est lié à la disponibilité, à la sécurité et à la stabilité de la configuration de nginx.

$ ./configure \
--prefix=/usr/local/nginx \
--user=www \
--group=www \
--with-pcre \
--with-openssl=/tmp/openssl-1.1.0e \
--with-http_ssl_module \
--with-http_v2_module \
--with-http_realip_module \
--with-http_addition_module \
--with-http_sub_module \
--with-http_dav_module \
--with-http_flv_module \
--with-http_mp4_module \
--with-http_gunzip_module \
--with-http_gzip_static_module \
--with-http_random_index_module \
--with-http_secure_link_module \
--with-http_stub_status_module \
--with-http_auth_request_module \
--with-http_image_filter_module \
--with-http_slice_module \
--with-mail \
--with-threads \
--with-file-aio \
--with-stream \
--with-mail_ssl_module \
--with-stream_ssl_module \
$ make -j8 && make install //编译并安装
Créer un fichier d'unité Nginx du système systemctl

Une fois l'installation terminée, il doit être allumé automatiquement. Sinon, il doit être démarré manuellement à chaque fois, ce qui serait trop gênant.

$ vim /usr/lib/systemd/system/nginx.service

[Unit]
Description=The nginx HTTP and reverse proxy server
After=syslog.target network.target remote-fs.target nss-lookup.target

[Service]
Type=forking
PIDFile=/usr/local/nginx/logs/nginx.pid
ExecStartPre=/usr/local/nginx/sbin/nginx -t
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/bin/kill -s HUP /usr/local/nginx/logs/nginx.pid
ExecStop=/bin/kill -s QUIT /usr/local/nginx/logs/nginx.pid
PrivateTmp=true

[Install]
WantedBy=multi-user.target
保存并退出。
Ajoutez le démarrage automatique au démarrage et démarrez Nginx
$ systemctl enable nginx.service
$ systemctl restart nginx.service
Configurer le pare-feu Firewalld
$ firewall-cmd --zone=public --add-port=80/tcp --permanent
$ firewall-cmd --reload
Vérifiez si Nginx démarre avec succès
$ ss -ntlp

Vous pouvez voir que le processus nginx est en cours d'exécution. À ce stade, l'installation de nginx est terminée. Vous avez peut-être encore des questions sur la manière dont nginx analyse et prend en charge les programmes PHP. Ne paniquez pas, j'en parlerai dans le prochain article.

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!

Déclaration:
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