
# Nginx压缩包安装
1、nginx压缩包下载地址:http://nginx.org/en/download.html
2、按照业务需求,选择版本,进行下载:
3、将文件上传至Linux。
4、在目标目录下(任意,例如/home/app),创建nginx文件夹,将文件进行解压。
创建文件夹:`mkdir nginx`
文件解压:`tar -zxvf nginx-1.22.0.tar.gz /home/app/nginx/nginx-1.22.0`
5、进入nginx-1.22.0文件夹,输入命令。
```
./configure --with-stream
make & make install
```
6、进入/usr/local/nginx/conf文件夹,修改配置文件nginx.conf。
7、进入/usr/local/nginx/sbin文件夹,输入命令,后台启动nginx。
```
./nginx &
```
# Nginx配置开机自启
## 准备
- nginx的安装目录:/usr/local/nginx
- nginx安装成功,可以正常启动。
## 步骤
1、创建nginx启动命令脚本。
```
vi /etc/init.d/nginx
```
2、在创建的脚本里面输入内容,path修改成nginx的安装路径。
```
#! /bin/bash
# chkconfig: - 85 15
#PATH修改成nginx的安装地址
PATH=/usr/local/nginx
DESC="nginx daemon"
NAME=nginx
DAEMON=$PATH/sbin/$NAME
CONFIGFILE=$PATH/conf/$NAME.conf
PIDFILE=$PATH/logs/$NAME.pid
SCRIPTNAME=/etc/init.d/$NAME
set -e
[ -x "$DAEMON" ] || exit 0
do_start() {
$DAEMON -c $CONFIGFILE || echo -n "nginx already running"
}
do_stop() {
$DAEMON -s stop || echo -n "nginx not running"
}
do_reload() {
$DAEMON -s reload || echo -n "nginx can't reload"
}
case "$1" in
start)
echo -n "Starting $DESC: $NAME"
do_start
echo "."
;;
stop)
echo -n "Stopping $DESC: $NAME"
do_stop
echo "."
;;
reload|graceful)
echo -n "Reloading $DESC configuration..."
do_reload
echo "."
;;
restart)
echo -n "Restarting $DESC: $NAME"
do_stop
do_start
echo "."
;;
*)
echo "Usage: $SCRIPTNAME {start|stop|reload|restart}" >&2
exit 3
;;
esac
exit 0
```
3、按ESC,退出编辑模式,输入:wq,保存脚本。
4、在脚本文件目录下,命令行输入命令,去掉脚本中多余的\r回车符。
```
sed 's/\r//' -i nginx
```
- 问题:在Windows下写好脚本,拷贝到Linux上,修改权限,进行使用时,会出现/bin/bash^M:坏的解释器:没有那个文件或目录。
- 原因:Windows下编辑过,每一行的结尾是\n\r,Linux下文件的结尾是\n,因此在Windows下编辑过的文件,在Linux下打开,每一行的结尾会多出一个字符/r。
- 输入命令cat -A /etc/init.d/nginx,可以看到\r字符呗显示为^M。
- cat -A:显示所有字符,\n\r默认是不显示的。
- -i:插入。
- s:替代模式
5、设置执行权限,a表示所有,+表示添加,x表示可执行。
```
chmod a+x /etc/init.d/nginx
```
6、注册成服务。
```
chkconfig --add nginx
```
7、设置开机自启。
```
chkconfig nginx on
```
8、查看Linux开机启动项。
```
chkconfig --list
```
9、如果查看Linux开机启动项时,3、4、5项不是on的状态,可以手动修改
```
chkconfig --level 345 nginx on
```
# 操作命令
创建了nginx的启动脚本,可以用以下方式进行启动。
- 启动nginx服务:systemctl start nginx
- 停止nginx服务:systemctl stop nginx
- 重启nginx服务:systemctl restart nginx
直接在安装目录下启动。
- 进入到安装目录:cd /usr/local/nginx/sbin
- 启动:./nginx
- 后台启动:./nginx &
- 检测配置文件是否有误:./nginx -t
- 重启:./nginx -s reload
- 强制停止:./nginx -s stop
- 处理完请求后停止:./nginx -s quit
- 查询nginx版本和配置选项信息:./nginx -V
- 杀死所有nginx进程:kill all nginx
- 检查nginx是否已经启动:ps -ef | grep nginx
# 查看服务端口
- netstat -atulnp:显示所有端口和所有对应程序。
- netstat -nultp:查看服务端口号。
- ps -aux | grep nginx:查看nginx服务端口。
————————————————
版权声明:本文为CSDN博主「Chen_DAYTOY」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/Chen_Ping_DAYTOY/article/details/124996820