有外网的方法:
1.首先需要安装四个依赖
yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel
2.下载nginx安装包 https://nginx.org/en/download.html
我这里是下载的1.18版本,然后放在/usr/local的新建的nginx文件夹下
cd /usr/local/nginx
//解压安装包
tar -zxvf nginx-1.18.0.tar.gz
//这个是nginx的初始化配置文件,默认的是安装路径 也就是/usr/local/nginx,可以不用改动,然后执行下面这个命令
./configure
//执行make & make install 指令
make
make install
执行完以后 可以启动nginx了 用这个命令
/usr/local/nginx/sbin/nginx
或者 cd /usr/local/nginx/sbin 目录下
./nginx 开启
./nginx -s stop 停止
./nginx -s quit
./nginx -s reload
启动完以后 可以网页打开192.168.1.1:80或者你的ip:80 出现下面这个页面就说明成功了
3.修改端口号
默认端口是80,可以在配置文件里修改
//cd 到配置文件目录
cd /usr/local/nginx/conf
//修改nginx配置文件
vim nginx.conf
将server{
listen : 80;
修改为你需要的端口号
//然后重启
./sbin/nginx -s reload
如果修改端口号以后不能访问,有可能是你的服务器需要配置一下安全组
内网安装方法:
1.首先安装依赖包
首先需要确认是否安装gcc(一般都有安装)
输入 gcc –v
如果没有回提示 “command not found”
- 安装zlib、prce、openssl三个依赖包
补个连接,这个里面是我下载好的依赖包安装包,也是教程里用到的,亲测有用,但是没验证各组件是否最合适,请按需下载
将下载好的压缩包上传到目录/app/server下
- 1安装prce
cd /app/server
tar -zxvf pcre-8.44.tar.gz
cd pcre-8.44
./configure
make
make install(此步骤需要root权限,待确认)
- 2安装oppenssl
cd /app/server
tar –zxvf openssl-1.1.1e.tar.gz
cd /app/server/openssl-1.1.1e
./config
make
make install(此步骤需要root权限)
1.3 安装zlib
cd /app/server
tar –zxvf zlib-1.2.10.tar.gz
cd zlib-1.2.10/
CFLAGS="-O3 -fPIC" ./configure
Make
Make install (root权限)
2.安装nginx
cd /app/server
tar –zxvf nginx-1.18.0.tar.gz
cd nginx-1.18.0/
./configure –prefix=/app/server/nginx/nginx-server –with-pcre=/app/server/pcre-8.44 –with-zlib=/app/server/zlib-1.2.10 –with-openssl=/app/server/openssl-1.1.1e –with-stream
Make
Make install(root权限)
启动nginx
./nginx
检查nginx是否成功
输入
./nginx –v
有版本号 则代表成功
- 因为用root用户make install 以后,nginx文件夹所有者变为了root,所以需要开放文件权限给当前登录用户,比如我这是nginx用户
chown –R nginx /app/server/nginx/
3.开启端口号
同样需要root权限,nginx监听端口号暂定8090,两个服务端口号分别为8091和8092
如果你服务器有iptables,可以用注释掉的那几个命令,这个比较简单,如果没有,那就只能用firewalld命令了
首先开启8090端口
3.1检测本机端口号是否被占用
//netstat -apn |grep 8090
firewall-cmd –query-port=8090/tcp
3.2开启8090端口
// iptables –A INPUT –ptcp –dport 8090 –j ACCEPT
//service iptables seve
firewall-cmd --zone=public --add-port=8090/tcp --permanent
如果报错 Firewalld is not running
查看服务器是否开启 systemctl status firewalld
开启服务器 systemctl start firewalld
在去查看服务器如果显示 running 表示成功
在去执行开启端口:firewall-cmd --zone=public --add-port=8090/tcp –permanent
如果显示 success 表示可以
在去查下端口是否启用 success 成功 如果出现 no 需要重启防火墙 后再查看端口
重启服务器:firewall-cmd --reload
3.3同理开启8091 8092端口
4.配置nginx
4.1主配置文件修改
cd /app/server/nginx/nginx-server/conf
vim nginx.conf
将以下内容复制到文件中
worker_processes 1;
error_log logs/error.log;
error_log logs/error.log notice;
error_log logs/error.log info;
pid logs/nginx.pid;
events {
worker_connections 1024;
}
http {
include mime.types; #文件扩展名与类型映射表
default_type application/octet-stream; #默认文件类型
#日志模式
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
#访问日志存放位置
access_log logs/access.log main;
#开启高效传输模式
sendfile on;
#tcp_nopush on;
#超时时间
keepalive_timeout 65;
#子配置文件的位置
include /app/server/nginx/nginx-server/conf.d/*.conf;
}
4.2子配置文件
cd /app/server/nginx/nginx-server/
mkdir conf.d
cd conf.d
touch test.conf
vim test.conf
将以下内容复制到文件中
upstream testServer{
server localhost:8091 weight=1;
server localhost:8092 weight=1;
#ip_hash;
}
server{
listen 8090;
server_name test;
location / {
proxy_pass http://testServer;
proxy_intercept_errors off;
}
}