nginx反向代理实现IPv6代理IPv4web
本站教程收集整理的这篇文章主要介绍了nginx反向代理实现IPv6代理IPv4web,本站教程本站觉得挺不错的,现在分享给大家,也给大家做个参考。
1,环境准备好之后,下载安装包
进入一个目录(随便一个目录即可,用来存放下载的Nginx安装包,在此以/root目录为例)
进入目录命令:cd /root
下载Nginx安装包,本文用例 Nginx-1.16.0(最新版本可通过官网— http://nginx.org/download可查看)
下载命令:wget http://nginx.org/download/nginx-1.16.0.tar.gz
2,解压Nginx的tar包
解压命令: tar -zxvf ./Nginx-1.16.0.tar.gz
3,查看是否解压成功
命令: ls
4,进入刚解压的的目录
命令: cd Nginx-1.16.0
进行配置(在此将Nginx安装指向/usr/local/Nginx/ 目录下)
命令: ./configure --prefix=/app/Nginx/
5,进行编译和安装
命令: make && make install
6,整个验证、编译、安装过程应该不会报什么错误,如果在上一过程中使用prefix设置了安装目标目录,那么还需要在/etc/profile文件中设置环境变量(备注:环境变量一般指操作系统中用来指定操作系统运行环境的一些参数,相当于设置了一个启动软件(如MysqL/jdk)等快速路径,方便用户使用。)
命令: vi /etc/profile
在最末尾加入export PATH=/app/Nginx/sbin:$PATH (其中的# add Nginx path为注释建议加上)
7,使环境变量生效
命令:source /etc/profile
8,用命令export 查看环境变量发现刚设置的Nginx目录已经成功进去了
9,检查是否安装成功:
进入到etc目录(cd /etc)中执行命令: Nginx –t ,若不正确则会给出相应的错误提示
10,对Nginx配置文件进行配置,Nginx配置文件的位置: /app/Nginx/conf/Nginx.conf(具体位置要看你自己的,如果不知道配置文件放在哪儿了,可以使用Xftp进行查看) ,使用vi命令进行编辑:
vi /usr/local/Nginx/conf/Nginx.conf
11,将配置文件修改为配置文件在Nginx安装目录下的conf中的Nginx.conf,命令:
/usr/local/Nginx/sbin/Nginx -c /app/Nginx/conf/Nginx.conf
12,启动Nginx, 命令:
Nginx
13,查看Nginx状态,命令:
ps -ef | grep Nginx
14,测试,启动Nginx的情况下在外部用浏览器访问刚才在配置文件中配置的地址 ,如图所示,即为成功
可能出现的问题:
在外部使用浏览器时,访问地址有可能访问不到。
问题原因:没有开放80端口,或者防火墙未关闭
基于安全考虑,建议选择开放80端口
1,开放80端口(请注意,要确保此时的防火墙是打开的,否则进行此步骤是没有意义的):
查看防火墙中开放端口命令— iptables -L
将某个端口(在此以80为例)开放firewall-cmd --zone=public --add-port=80/tcp --peRMANent
重启防火墙:systemctl restart firewalld.service
2,关闭防火墙:
service firewalld stop
这两个操作,选择其中一个即可。至此,Nginx安装教程结束。
在Nginx安装包中编译Nginx.conf文件,如下:
http {
upstream ipv6{ #ipv6是自己创建的上游服务器的名称
server 1.1.1.1:80; #1.1.1.1是真实的IPv4网站的IP地址
}
……
……
……
server {
listen 80 default_server ;
listen [::]:80 default_server ; #增加该命令,即监听所有IPv6的80端口
server_name xxxx.yyyy.edu.cn; #IPv4的url
……
……
……
LOCATiON / {
proxy_pass http://ipv6; #该部分所有的红颜色为添加的,需要关联upstream和server信息
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-ForWARDed-For $proxy_add_x_forWARDed_for;
root html;
index index.html index.htm;
}
安装完毕之后,启用Nginx服务,即可进行测试。
添加多个代理如下配置:
http {
map $host $upstream{
www.aaaa.edu.cn 1.1.1.1:80;
www.bbbb.edu.cn 2.2.2.2:80;
www.cccc.edu.cn 3.3.3.3:80;
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 0;
keepalive_timeout 65;
#gzip on;
server {
listen 80;
listen [::]:80;
server_name www.aaaa.edu.cn;
LOCATIOn / {
proxy_pass http://www.aaaa.edu.cn; #上海民航职业
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-ForWARDed-For $http_x_forWARDed_for;
root html;
index index.html index.htm;
}
}
server {
listen 80;
listen [::]:80;
server_name www.bbbb.edu.cn;
LOCATIOn / {
proxy_pass http://www.bbbb.edu.cn; #上海出版印刷
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-ForWARDed-For $http_x_forWARDed_for;
root html;
index index.html index.htm;
}
}
server {
listen 80;
listen [::]:80;
server_name www.cccc.edu.cn;
LOCATIOn / {
proxy_pass http://www.cccc.edu.cn; #上海农林职业
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-ForWARDed-For $http_x_forWARDed_for;
root html;
index index.html index.htm;
}
}
本站总结
以上是本站教程为你收集整理的nginx反向代理实现IPv6代理IPv4web全部内容,希望文章能够帮你解决nginx反向代理实现IPv6代理IPv4web所遇到的程序开发问题。
如果觉得本站教程网站内容还不错,欢迎将本站教程推荐给好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。
《nginx反向代理实现IPv6代理IPv4web》来自互联网同行内容,若有侵权,请联系我们删除!
相关文章
发表评论
评论列表
- 这篇文章还没有收到评论,赶紧来抢沙发吧~