您好,欢迎来到网暖!

当前位置:网暖 » 站长资讯 » 建站基础 » 网络技术 » 文章详细 订阅RssFeed

nginx反向代理实现IPv6代理IPv4web

来源:网络整理 浏览:269次 时间:2020-05-29

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;   }

}

推荐站点

  • 腾讯腾讯

    腾讯网(www.QQ.com)是中国浏览量最大的中文门户网站,是腾讯公司推出的集新闻信息、互动社区、娱乐产品和基础服务为一体的大型综合门户网站。腾讯网服务于全球华人用户,致力成为最具传播力和互动性,权威、主流、时尚的互联网媒体平台。通过强大的实时新闻和全面深入的信息资讯服务,为中国数以亿计的互联网用户提供富有创意的网上新生活。

    www.qq.com
  • 搜狐搜狐

    搜狐网是全球最大的中文门户网站,为用户提供24小时不间断的最新资讯,及搜索、邮件等网络服务。内容包括全球热点事件、突发新闻、时事评论、热播影视剧、体育赛事、行业动态、生活服务信息,以及论坛、博客、微博、我的搜狐等互动空间。

    www.sohu.com
  • 网易网易

    网易是中国领先的互联网技术公司,为用户提供免费邮箱、游戏、搜索引擎服务,开设新闻、娱乐、体育等30多个内容频道,及博客、视频、论坛等互动交流,网聚人的力量。

    www.163.com
  • 新浪新浪

    新浪网为全球用户24小时提供全面及时的中文资讯,内容覆盖国内外突发新闻事件、体坛赛事、娱乐时尚、产业资讯、实用信息等,设有新闻、体育、娱乐、财经、科技、房产、汽车等30多个内容频道,同时开设博客、视频、论坛等自由互动交流空间。

    www.sina.com.cn
  • 百度一下百度一下

    百度一下,你就知道

    www.baidu.com