在之前我介绍过了,如何通过yum来在centos的环境下安装nginx。今天来介绍一下如何用源码安装的方式安装nginx。以及后续我会写一些nginx 的简单使用教程。
Nginx(发音为"engine-x")是一个开源的高性能的HTTP和反向代理服务器,现在有不少企业在用,虽然我们的工作可能不是开发,或者运维,但是多学点,总归是好的。通过几篇入门教程,希望可以让我们面对nginx不再那么陌生,起码知道他是干啥的
话不多说,我们开始今天的教程
- 先登录到服务器后台,找个自己常用的路径
- 访问 nginx的开源版本的下载页面
https://nginx.org/en/download.html
- 我们选择一个stable version,然后鼠标右键,复制下载地址即可.比我这里是1.24.0
- 服务器上执行命令
wget https://nginx.org/download/nginx-1.24.0.tar.gz
我们将它下载下来 - 解压缩,执行命令:
tar -zxvf nginx-1.24.0.tar.gz nginx-1.24.0/
- 解压好之后,我们进入nginx 的目录,下面会有一个configure的执行文件,在执行configure前,我们先安装依赖
- 我们依次安装以下依赖。
- yum install -y gcc
- yum install -y pcre pcre-devel
- yum install -y zlib zlib-devel
- yum install -y openssl openssl-devel
- 接着我们执行命令:
./configure --prefix=/usr/local/nginx
--prefix的意思是指定安装的目录。 - 然后执行
make && make install
进行编译和安装
安装完后我们进入/usr/local/nginx 。然后进入sbin目录,就可以看到里面的nginx二进制文件了
接着我们输入 ./nginx
就可以启动nginx
输入 curl localhost
,如果所示,出现welcome to nginx 即代表成功
细心的朋友们可能发现,我直接用systemctl命令启动nginx失败了,是因为nginx还没添加到系统服务里。 我们先关闭nginx,在sbin的路径下输入 ./nginx-s stop
停止nginx
输入 vi /usr/lib/systemd/system/nginx.service
,然后将以下内容复制:
[Unit]
Description=nginx - web server
After=network.target remote-fs.target nss-lookup.target
[Service]
Type=forking
PIDFile=/usr/local/nginx/logs/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 reload
ExecStop=/usr/local/nginx/sbin/nginx -s stop
ExecQuit=/usr/local/nginx/sbin/nginx -s quit
PrivateTmp=true
[Install]
WantedBy=multi-user.target
重新加载系统服务 ,输入 systemctl daemon-reload
用systemctl启动nginx,输入: systemctl start nginx.service
将Nginx设为开机自动启动,输入: systemctl enable nginx.service
就大功告成了
本节内容到此结束,源码安装的方式可能对小白略显麻烦,但是实际上不难。