Maison > Opération et maintenance > Nginx > Analyse des exemples d'installation de Nginx sous Linux

Analyse des exemples d'installation de Nginx sous Linux

WBOY
Libérer: 2023-05-22 08:46:05
avant
1369 Les gens l'ont consulté

Utilisez la méthode source binaire du système pour installer

Dans le système ubuntu/debian

sudo apt-get install nginx
Copier après la connexion

ou le système redhat/centos

sudo yum install nginx
Copier après la connexion

Cette méthode est la manière la plus simple et la plus rapide, mais ce n'est pas la meilleure. suivant Parlons de ce problème principal.

Avantages

  • Toutes les dépendances binaires d'installation ont été prises en charge, pas besoin de s'inquiéter des problèmes de compatibilité, il peut être utilisé immédiatement

  • Configuration de la connexion Nginx, les autorisations utilisateur n'ont pas besoin d'être traité, nous avons déjà écrit ceci pour vous Bloqué

  • Ne vous inquiétez pas des problèmes de maintenance et de mise à niveau des bogues nginx, obtenez simplement le dernier système directement

  • Simple à désinstaller, une seule commande

  • Journal simple maintenance, tronquer automatiquement le journal de la journée, compresser et enregistrer

Inconvénients

  • Impossible de choisir la version installée indépendamment

  • Impossible de choisir les modules compilés indépendamment

  • Il devient très difficile d'étendre les fonctions et les besoins à recompiler

  • La structure des catégories est complexe, et le fichier de configuration est dans Sous /etc/, le fichier de déploiement est dans /var/www

  • Le redémarrage du service et la modification de la configuration nécessitent des autorisations root

  • Les performances sont légèrement moins bonnes. Compilez et installez

Si vous êtes un novice sous Linux, il est fortement recommandé d'utiliser cette méthode d'installation, pas besoin de considérer les dépendances de compilation, vous pouvez l'utiliser directement après l'installation. Mais si votre serveur est utilisé dans un environnement de production et est en cours de développement et d’amélioration progressive, cette méthode n’est pas recommandée. Des modules tiers pourront être ajoutés à l'avenir, et ils doivent être compilés et installés à ce moment-là (discuté ci-dessous). Lors du redémarrage du serveur, n'utilisez pas l'utilisateur root, mais utilisez sudo pour obtenir brièvement root. Si votre serveur est utilisé pour déployer certains fichiers statiques, principalement pour certains espaces Web, et utilise généralement l'outil FTP pour déployer des fichiers, cette méthode ne pose certainement aucun problème.

Compiler et installer

Je n'écrirai pas sur les avantages et les inconvénients, j'inverse simplement ce qui précède. Pour installer en utilisant cette méthode, vous devez connaître un peu la compilation Linux, et seuls les utilisateurs Linux modérés peuvent la contrôler. J'ai vu que la plupart des tutoriels sur Internet installent les dépendances de compilation directement dans /usr/local/. Cette méthode n'est pas bonne. Si nous souhaitons désinstaller ces dépendances à l’avenir, nous trouverons cela très gênant. Vous ne pouvez pas simplement le supprimer directement sous la catégorie. Certaines distributions Linux écriront les fichiers d'installation dans les fichiers de configuration. Je ne sais pas où trouver ces fichiers de configuration. Si une version dépendante affecte un autre logiciel, comment gérer les problèmes de version. Nous voulions juste installer nginx, mais cela a causé beaucoup de problèmes.

Préparation de l'environnement de compilation

Avant de commencer, assurez-vous que votre Linux est préparé avec gcc, make, wget, g++ et d'autres logiciels.

Créez une catégorie pour stocker les fichiers téléchargés, entrez dans le répertoire pour télécharger les fichiers sources de la bibliothèque dépendants

Téléchargez openssl, qui est principalement utilisé pour le cryptage du module SSL et prend en charge https

wget https://www.openssl.org/source/openssl-1.0.2s.tar.gz
Copier après la connexion

Téléchargez pcre pour implémenter les fonctions de redirection d'adresse et de réécriture d'adresse et prise en charge des instructions de localisation et des expressions régulières

wget https://ftp.pcre.org/pub/pcre/pcre-8.43.tar.gz
Copier après la connexion

Téléchargez le module de compression zlib gzip

wget https://zlib.net/zlib-1.2.11.tar.gz
Copier après la connexion

Téléchargez nginx

wget http://nginx.org/download/nginx-1.17.1.tar.gz
Copier après la connexion

Utilisez tar pour décompresser tous les fichiers

ls *.tar.gz | xargs -n1 tar xzvf
Copier après la connexion

Options de compilation

Utilisez ./configure pour définir divers scripts de paramètres nginx , y compris les chemins d'accès aux fichiers source et de configuration, les options du compilateur, les méthodes de gestion des liaisons et les listes de modules. Le script fait cela en créant les makefiles requis pour compiler le code et installer l'open source nginx.

参数描述
–prefix=nginx安装目录,以及有其他配置脚本选项的路径设置的所有相对路径的基本位置。默认值/usr/local/nginx
–sbin-path=nginx二进制执行文件的名称,默认值:/sbin/nginx</td></tr><tr><td>–conf-path=<path></td><td>nginx配置文件的名称。但是,您可以通过在nginx命令行上使用选项指定其他文件来始终在启动时覆盖此值。默认值:<prefix> conf / nginx.conf-c <filename></td></tr><tr><td>–pid-path=<path></td><td>nginx.pid文件的名称,用于存储nginx主进程的进程id 。安装后,可以使用nginx配置文件中的pid指令更改文件名的路径。默认值:<prefix> /logs/nginx.pid</td></tr><tr><td>–error-log-path=<path></td><td>error,warn和诊断数据的日志文件的名称。安装后,可以使用nginx配置文件中的error_log指令更改文件名。默认值:<prefix> /logs/error.log</td></tr><tr><td>–http-log-path=<path></td><td>http服务器请求的主日志文件的名称。安装后,始终可以使用nginx配置文件中的access_log指令更改文件名。默认值:<prefix> /logs/access.log</td></tr><tr><td>–user=<name></td><td>nginx运行进程的拥有者。安装后,可以使用nginx配置文件中的user指令更改名称。默认:nobody</td></tr><tr><td>–group=name</td><td>nginx运行进程的拥有者用户组。安装后,可以使用nginx配置文件中的user指令更改名称。默认值:–user选项设置的值</td></tr><tr><td>–with-pcre=<path></td><td>pcre库源代码的路径,这是位置指令和rewrite模块中正则表达式支持所必需的</td></tr><tr><td>–with-pcre-jit</td><td>使用“即时编译”支持(pcre_jit指令)构建pcre库</td></tr><tr><td>–with-zlib=<path></td><td>zlib库的源代码路径,gzip模块需要该路径</td></tr><tr><td>–with-http_ssl_modul</td><td>启用https支持</td></tr><tr><td>–with-http_v2_module</td><td>开启 http/2请求支持</td></tr></tbody></table><p >还要太多编译参数我就不一一列举,有兴趣的同学可以自己去<br/></p><p >参看</p><p >编译安装<br/></p><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:bash;">./configure \ --with-openssl=../openssl-1.0.2s \ --with-pcre=../pcre-8.43 \ --with-zlib=../zlib-1.2.11 \ --with-pcre-jit --user=admin \ --prefix=/home/admin/nginx \ --with-http_ssl_module \ --with-http_v2_module
Copier après la connexion

输出以下信息,说明依赖没问题

configuration summary
 + using pcre library: ../pcre-8.43
 + using openssl library: ../openssl-1.0.2s
 + using zlib library: ../zlib-1.2.11
 
 nginx path prefix: "/home/admin/nginx"
 nginx binary file: "/home/admin/nginx/sbin/nginx"
 nginx modules path: "/home/admin/nginx/modules"
 nginx configuration prefix: "/home/admin/nginx/conf"
 nginx configuration file: "/home/admin/nginx/conf/nginx.conf"
 nginx pid file: "/home/admin/nginx/logs/nginx.pid"
 nginx error log file: "/home/admin/nginx/logs/error.log"
 nginx http access log file: "/home/admin/nginx/logs/access.log"
 nginx http client request body temporary files: "client_body_temp"
 nginx http proxy temporary files: "proxy_temp"
 nginx http fastcgi temporary files: "fastcgi_temp"
 nginx http uwsgi temporary files: "uwsgi_temp"
 nginx http scgi temporary files: "scgi_temp"
Copier après la connexion

编译

make
Copier après la connexion

安装

make install
Copier après la connexion

设置权限

因为linux设置普通用户,不能占用1024一下的端口,直接启动nginx会出现权限不足的错误。将nginx分配给root用户,在分配特殊权限。

sudo chown root nginx
sudo chmod u+s nginx
Copier après la connexion

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