从源码安装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 等于一个路径,该路径是设置一个可行执行文件的名字,这个名字仅仅用于安装。默认该文件被命名为 prefix/sbin/nginx
--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""

 

posted @ 2022-04-02 11:15  北冥没有鲲  阅读(59)  评论(0)    收藏  举报