一、下载Nginx
或者如果Linux联网,直接在Linux服务上使用wget命令把Nginx安装包下载到/usr/local/目录中
#下载nginx安装包
wget -c http://nginx.org/download/nginx-1.26.1.tar.gz
注意:如果没有wget命令,需要先安装:(centos版本命令:)yum install -y wget
二、安装
1、解压
tar -zxvf nginx-1.26.1.tar.gz
2、初始化Nginx
进入Nginx的根目录,执行命令:./configure
初始化出现报错如下图所示:
报错解决执行下面命令
yum -y install pcre-devel
#上面命令执行完后再次执行 根据实际情况换目录
./configure --prefix=/usr/local/nginx \
--sbin-path=/usr/local/nginx/sbin/nginx \
--conf-path=/usr/local/nginx/conf/nginx.conf \
--error-log-path=/usr/local/nginx/logs/error.log \
--http-log-path=/usr/local/nginx/logs/access.log \
--pid-path=/usr/local/nginx/logs/nginx.pid \
--with-http_ssl_module
#如果还是报错执行
yum -y install openssl openssl-devel
3、make编译安装
#先执行
make
#在执行
make install
4、验证是否安装成功
whereis nginx
三、启动与其他
1、启动
#启动脚本是在
cd /usr/local/nginx/sbin/nginx
#启动
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
#停止
/usr/local/nginx/sbin/nginx -s stop
#重载
/usr/local/nginx/sbin/nginx -s reload
#杀掉nginx
/usr/local/nginx/sbin/nginx -s quit
启动 ./nginx
访问nginx页面:
在浏览器中输入 ip + 端口号访问(端口默认80)
这样就算安装成功了
2、关闭&重启
均在/usr/local/nginx/sbin下执行
#关闭
./nginx -s stop
#重启
./nginx -s reload
# 检查nginx配置文件是否有问题
./nginx -t
# 查看nginx版本信息
./nginx -v
# 查看nginx详细版本信息,注意是大写V
./nginx -V
重启报错如下解决方式
情况一:nginx.conf的nginx.pid被注释了 如下图打开
情况二:没有指定配置目录
输入来使用指定nginx.conf文件的方式重启nginx(首先保证上面第一种情况的pid没有被注释,否则可能前两次能打开,但是以后还是会报错的)
sudo /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
3、设置开启自启
vim /etc/rc.local
文本底部追加
/usr/local/nginx/sbin/nginx
四、Nginx介绍
1、修改配置端口和默认访问页面
#找到nginx的配置文件,编辑
vi /usr/local/nginx/conf/nginx.conf
2、配置文件解释
#user nobody;#运行nginx的默认账号
#nginx进程数,建议设置为等于CPU总核心数。
worker_processes 1;
#事件区块开始
events {
#单个进程最大链接数(最大连接数=连接数*进程数)
#根据硬件调整,与前面工作进程配合起来用,尽量大,但别把CPU跑到100%就行,每个进程允许的最多连接数,理论上为每台nginx服务器的最大连接数
worker_connections 1024;
}
#设定http服务器,利用它的反向代理功能提供负载均衡支持
http {
#include:导入外部文件mime.types,将所有types提取为文件,然后导入到nginx配置文件中。
include mime.types;
#默认文件类型
default_type application/octet-stream;
#开启高效文件传输模式,sendfile指令指定nginx是否调用sendfile函数来输出文件,对于普通应用设置为on,如果用来进行下载等应用磁盘IO重负载应用,可设置为off,以平衡磁盘与网络I/O处理速度,降低系统的负载,注意:如果图片显示不正常把这个改成off
#sendfile指令指定,nginx是否调用sendfile函数(zero copy方式)来输出文件,对于普通应用,必须设为on,如果用来进行下载等应用磁盘IO重负载应用,可设置为off,以平衡磁盘与网络IO处理速度,降低系统uptime
sendfile on;
#长连接超时事件,单位是秒
keepalive_timeout 65;
#第一个server区块开始,表示一个独立的虚拟主机站点
server {
#提供服务的端口,默认80
listen 80;
#提供服务的域名主机名
server_name localhost;
#对 “/” 启动反向代理,第一个location区块开始
location / {
root html; #服务默认启动目录,可以改成指定的目录位置
index index.html index.htm; #默认的首页文件,多个用空格分开
}
#错误页面路由
error_page 500 502 503 504 /50x.html; # 出现对应的http状态码是,使用50x.html回应客户
location = /50x.html { # location区块开始,访问50x.html
root html; # 指定对应的站点目录为html
}
}
}