linux上编译nginx

2020-01-02  本文已影响0人  bug_ling

1、确认以下库是否安装

库:make zlib zlib-devel gcc-c++ libtool  openssl openssl-devel

下载openssl、pcre、zlib库

wget https://www.openssl.org/source/openssl-1.0.2u.tar.gz

wget https://ftp.pcre.org/pub/pcre/pcre-8.43.tar.gz

wget https://zlib.net/zlib-1.2.11.tar.gz

2、下载并解压

wget http://nginx.org/download/nginx-1.17.7.tar.gz

tar -zvxf nginx-1.17.7.tar.gz

cd nginx-1.17.7/

3、编译nginx

./configure --with-openssl=../openssl-1.0.2u --with-pcre=../pcre-8.43 --with-zlib=../zlib-1.2.11 --with-http_ssl_module --with-http_v2_module

make && make install

注意:编译的过程会出现以下错误:

(1)configure: error: Invalid C++ compiler or C++ compiler flags

(2)make[1]: *** [objs/Makefile:1314: ../pcre-8.43/Makefile] Error 1

根据问题一,安装gcc-c++即可解决以上两个问题点

4、创建软连接

ln -s /usr/local/nginx/sbin/nginx  /usr/local/sbin/nginx

nginx -v

5、设置systemctl/service启动nginx服务

cd /usr/lib/systemd/system/ && vi nginx.service

[Unit]

Description=nginx - high performance web server

After=network.target remote-fs.target nss-lookup.target

[Service]

Type=forkingPIDFile=/var/run/nginx.pid

ExecStartPre=/usr/local/nginx/sbin/nginx -t -c /usr/local/nginx/conf/nginx.conf

ExecStart=/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf

ExecReload=/usr/local/nginx/sbin/nginx -s

reloadExecStop=/usr/local/nginx/sbin/nginx -s stop

ExecQuit=/usr/local/nginx/sbin/nginx -s quit

PrivateTmp=true

[Install]

WantedBy=multi-user.target

将上面的代码复制到nginx.service中

systemctl daemon-reload

systemctl start/stop/reload/quit nginx.service

systemctl enable nginx.service (设置开机自启)

参开链接:

https://docs.nginx.com/nginx/admin-guide/installing-nginx/installing-nginx-open-source/#dependencies

https://juejin.im/post/5d31ec3b5188253a8f27ef5b

https://www.runoob.com/linux/nginx-install-setup.html

https://blog.csdn.net/qq_17054659/article/details/77186249

https://serverfault.com/questions/565339/nginx-fails-to-stop-and-nginx-pid-is-missing

上一篇下一篇

猜你喜欢

热点阅读