Linux源码安装Nginx,并通过systemd管理

下载源码包:http://nginx.org/en/download.html

安装依赖包,编译安装

sudo yum install gcc pcre-devel openssl-devel make geoip-devel
useradd -s /sbin/nologin nginx
tar xf nginx-1.12.2.tar.gz
cd nginx-1.12.2
./configure --user=nginx --group=nginx \
--prefix=/usr/local/nginx --with-stream \
--with-http_ssl_module --with-http_realip_module \
--with-http_geoip_module --with-http_stub_status_module \
--without-http_autoindex_module \
--without-mail_pop3_module \
--without-mail_imap_module \
--without-mail_smtp_module
sudo make && sudo make install 
sudo ln -s /usr/local/nginx/sbin/nginx /usr/local/bin/nginx		#做软链接,方便执行nginx命令
sudo nginx		#启动nginx
sudo nginx -V		#查看nginx版本

在这里插入图片描述

编译选项解释

--user			指定启动nginx的用户
--group			指定启动nginx的用户组
--prefix					指定nginx安装的根路径
--with-stream				支持upstrem负载均衡
--with-http_ssl_module		支持SSL,需要有OpenSSL库(系统默认就有)
--with-http_realip_module	支持传递http头中的客户端IP地址
--with-http_geoip_module	支持设置各种变量以便在配置文件中的区段使用,基于地理位置查找客户端IP地址(需安装geoip-devel,ubuntu安装libgeoip-dev)
--with-http_stub_status_module		支持收集nginx自身的状态信息

通过systemd管理

cat > /usr/lib/systemd/system/nginx.service <<- EOF
	[Unit]
	Description=nginx
	After=syslog.target network.target

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

	[Install]
	WantedBy=multi-user.target
EOF
相关推荐
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页