从源码安装Nginx
操作系统:CentOS
安装依赖包:
$ yum install gcc zlib-devel openssl-devel make pcre-devel libxml2-devel libxslt-devel libgcrypt-devel gd-devel perl-ExtUtils-Embed GeoIP-devel
下载Nginx源码包:
$ wget https://nginx.org/download/nginx-1.20.2.tar.gz
解压缩tar文件:
$ tar zxvf nginx-1.20.2.tar.gz
进入源码包:
$ cd nginx-1.20.2
使用configure命令进行编译:
./configure --sbin-path=/usr/local/nginx/nginx --conf-path=/usr/local/nginx/nginx.conf --pid-path=/usr/local/nginx/nginx.pid --with-http_ssl_module --with-pcre=../pcre-8.39 --with-zlib=../zlib-1.2.8
运行以下命令以完成安装:
$ make $ make install
configure命令的常用参数:
--prefix=path |
前缀路径,定义了一个保存服务器文件的目录 |
--sbin-path=path |
sbin-path 等于一个路径,该路径是设置一个可行执行文件的名字,这个名字仅仅用于安装。默认该文件被命名为 |
--conf-path=path |
conf-path等于一个路径,设置nginx.conf这个配置文件的名称。如果有必须要,nginx可以用不同的配置文件开始。特别的命令配置文件的命令行参数为 -c file.默认文件命名为 prefix/conf/nginx.conf |
--pid-path=path |
pid-path等于一个路径,该路径是nginx.pid文件,用于存储主进程中的一个进程ID.在安装后,这个文件名称通常被改为nginx.conf备至文件被使用pid指令。默认文件被命名为 prefix/logs/nginx.pid |
--error-log-path=path |
errror-log-path等于一个路径,该路径是参数错误、警告、诊断文件。在安装后,该文件通常被修改到nginx.conf备至文件用error log指令,默认文件被命名为 prefix/logs/error.log |
--http-log-path=path |
http-log-path等于一个路径,该路径设置了http服务器的请求逻辑日志参数的名称。在安装后,该名称被改进进入nginx.conf配置文件用 通过逻辑 指令。默认该文件被命名为 prefix/logs/access.log |
--user=name |
--user等于一个路径,该路径是一个能够被用着工作进程的资格证书的特权用户。在安装后,该名称被改进进入nginx.config文件,被命名为user指令。默认用户为没有任何人 |
--group=name |
-group等于一个名称,具有工作进程资格证书的一组名称。这个名称通常被改进进入nginx.conf以user指令。默认一组指令被设置到特权用户 |
| --with/without-select_module | 是允许(with)或者禁用(without)一个模块,该模块允许服务器用select()方法工作。这个模块被自动建立当平台没有出现适合的方法如kqueue, epoll, or /dev/poll |
| --with/without-poll_module | 允许或者禁用一个建立的模块,该模块允许服务器用poll()线程方法工作。该模块被自动建立当服务器没有出现荀彧合适的方法,例如kqueue,epoll,or /dev/poll |
| --with/without-http_gzip_module | 允许或者禁用http服务的解压缩创建模块。这个zlib图书馆被允许建立运行该模块 |
| --with/without-http_rewrite_module | 允许或禁用http服务器http服务器转发请求或者改变请求的URL创建的模块。 这个PCRE这个图书馆被允许建立和运行该模块 |
| --with/without-http_proxy_module | 允许或禁止http服务器代理模块 |
| --with/without-http_ssl_module | 允许或禁止建立一个http服务器的http协议支持的模块。该模块默认不会被建立。 开源库被建立和运行该模块 |
--with-pcre=path |
等于一个路径,该路径是一个网络库的资源。这个库需要下载从网络库和提取。剩下的被nginx的配置文件创建。这个库被要求为当前命令或者重写模块的库命令 |
| --with-pcre-jit | 建立了PCRE库带着及时编译帮助 |
--with-zlib=path |
等于一个路径,设置了zlib库的源代码路径。这个库贡献需要从zlib站点下站和提取。剩下的被做到nginx的配置文件和编译。这个库被http解压缩模块所需要 |
--with-cc-opt=parameters |
等于参数,设置附加的参数被添加到目的变量。当使用系统PCRE库在免费的BSD下时候,用--with-cc-opt="-I /usr/lcoal/include"应该被设定。如果文件的大小需要支持选择方法,他被特定指示为这样的形式:--with-c-opt="-D FD_SETSIZE=2048" |
--with-ld-opt=parameters |
设定附加的参数,这些常被用到连接。当我们在UNIX操作系统下使用PCRE库时候,被指定为"--with-ld-opt="-L /usr/local/lib"" |
浙公网安备 33010602011771号