目录
从官网下载源码包
复制下载链接
登录http://nginx.org官网,选择download稳定版本,复制链接地址。
使用wget下载源码包
wget http://nginx.org/download/nginx-1.18.0.tar.gz
安装依赖包
yum install gcc gcc-c++ pcre pcre-devel zlib zlib-devel openssl openssl-devel -y
安装Nginx
解压包
tar -xzvf nginx-1.18.0.tar.gz
预编译
cd nginx-1.18.0
useradd -s /sbin/nologin www -M
./configure --prefix=/usr/local/nginx --user=www --group=www --with-http_stub_status_module
cat Makefile
编译并安装
make && make install
启动Nginx
/usr/local/nginx/sbin/nginx 启动Nginx
ps -ef|grep nginx 查看Nginx进程
netstat -tnlp|grep 80 查看监听端口,过滤80端口
关闭防火墙
关闭firewall:
systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall开机启动
firewall-cmd --state #查看默认防火墙状态(关闭后显示notrunning,开启后显示running)
2、关闭SElinux:
/usr/sbin/setenforce 0 立刻关闭 SELINUX
加到系统默认启动里面
echo "/usr/sbin/setenforce 0" >> /etc/rc.local
这样,我们在不需要在CentOS系统中开启SELINUX的时候,就可以快速的去关闭了,以及在需要的时候,在开启它。
使用浏览器访问Nginx
安装Nginx脚步
根据以上步骤汇总的nginx-1.18.0自带安装脚步
Nginx命令
常见命令
-h帮助命令
-v 可查看nginx的版本。
-V 可查看nginx的详细信息,包括编译的参数。
-t 可用来测试nginx的配置文件的语法错误。
-T 可用来测试nginx的配置文件语法错误,同时还可以通过重定向备份 nginx的配置文件。
-q 如果配置文件没有错误信息时,不会有任何提示,如果有错误,则提 示错误信息,与-t配合使用。
-s 发送信号给master处理:
stop 立刻停止nginx服务,不管请求是否处理完
quit 优雅的退出服务,处理完当前的请求退出
reopen 重新打开日志文件,原日志文件要提前备份改名。
reload 重载配置文件
-p 设置nginx家目录路径,默认是编译时的安装路径
-c 设置nginx的配置文件,默认是家目录下的配置文件 -g 设置nginx的全局变量,这个变量会覆盖配置文件中的变量
启动Nginx
nginx
立即停止Nginx
nginx -s stop
优雅停止Nginx
nginx -s quit
重新打开日志文件
重新打开日志文件,如需保留原来的日志需要提前备份
[root@localhost logs]# ls access.log error.log nginx.pid [root@localhost logs]# mv access.log{,.bak} 备份日志
[root@localhost logs]# ls
access.log.bak error.log nginx.pid
[root@localhost logs]# /usr/local/nginx/sbin/nginx -s reopen [root@localhost logs]# ls
access.log access.log.bak error.log nginx.pid
重载配置文件
修改配置文件
重载配置文件
/usr/local/nginx/sbin/nginx -s reload
启动指定的配置文件
/usr/local/nginx/sbin/nginx -c /data/nginx.conf
设置全局变量
通过设置全局变量,让nginx在前端运行。
[root@localhost logs]# /usr/local/nginx/sbin/nginx -g "daemon off;"
现在当前nginx在前端运行, 输入ctrl +c,则nginx就退出了。 可以使用ctrl +z放置后台运行。
8)其他查看命令
netstat -ntlpa |grep 80
ps -ef |grep nginx
yum安装截图
编译安装截图
不输入绝对路径直接执行Nginx命令
编译安装的Nginx默认,执行命令需要输入绝对路径,使用以下三种方式可以直接执行Nginx命令
软链接
ln -s /usr/local/nginx/sbin/* /usr/local/sbin
然后重新读取下配置文件
. /etc/profile
ps:软连接做在PATH路径是第一位,因为yum安装的在/usr/sbin/目录下, which安装PATH的顺序找到第一个,就不找了
配置环境变量
echo "export PATH=/usr/local/nginx/sbin:$PATH" > /etc/profile.d/nginx.sh
然后重新读取下配置文件
source /etc/profile
ps:最好写在$PATH前面,否则,如果安装了yum版的nginx, 直接执行nginx会启动yum版的nginx,因为which nginx,会先找 到/usr/sbin/nginx文件
设置别名
alias nginx='/usr/local/nginx/sbin/nginx'
ps:which优先找别名
alias命令只作用于当次登入的操作。如果想每次登入都能使用这些命令的别名,则可以把相应的alias命令存放在 ~/.bashrc 文件中。
打开~/.bashrc文件,输入要设置的alias命令,保存。
alias nginx='/usr/local/nginx/sbin/nginx'
然后运行
source ~/.bashrc1
备注:推荐使用别名的方式。软连接和环境变量的方式,在升级Nginx时会出现错误。这是Nginx软件自身的bug问题,目前没有其他的解决方案。