Nginx反向绑定域名方法和详细操作应用实例:Google和Gravatar

VPS主机   2023年10月09日 12:35  

Nginx反向绑定域名方法和详细操作应用实例:Google和Gravatar

,即将域名B绑定到域名A上,用户只要访问B就等同于进入A,内容都是由A提供,它有点像建立了一个A的镜像。什么时候要用到反向绑定域名?服务器集群和网站负载均衡时,把用户访问请求发送不同的服务器上。

关于反向绑定域名的方法部落之前也分享过好几次,本篇文章就来详细介绍一下Nginx反向绑定域名方法。之所以要用Nginx,主要在于Nginx在反向绑定域名有着天然的优势,并且功能强大,可以满足我们更多更高的应用需求。

平常我们都是用Nginx反向绑定域名来搞定无法绑定域名的空间,这次来分享一下搞定Google和Gravatar两个网站访问的问题,更多的有关于反向绑定域名的方法还有:

注意:上面提到的Nginx反向绑定域名都需要用到VPS主机,如果你只有虚拟主机,则可以试试7ghost。

Nginx反向绑定域名方法和详细操作应用实例:Google和Gravatar

一、Nginx安装和基本操作命令

1、Nginx可以直接使用LNMP这样的一键安装包,例如:LNMP新版VPS主机控制面板安装

2、如果你是用一个专门的服务器来作反向绑定域名用,则只需要安装一个Nginx即可,为VPS主要省点资源。命令:


wget https://sysoev.ru//nginx-0.7.64.tar.gz 
tar zxvf -0.7.64.tar.gz 
cd -0.7.64
./configure --user=www --group=www --prefix=/usr/local/ --with-http_stub_status_module --with-http_ssl_module --with-ipv6
make && make install

3、如果在执行以上命令遇到./configure: error: the HTTP rewrite module requires the PCRE library.错误提示,运行:yum -y install pcre-devel openssl openssl-devel

4、执行以下命令,把ngx_http_substitutions_filter_module模块编译进去,主要为了反向绑定域名过滤到页面的URL地址。


git clone https://github.com/yaoweibin/ngx_http_substitutions_filter_module.git
./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_gzip_static_module --with-ipv6 --add-module=/root/nginx-0.7.64/ngx_http_substitutions_filter_module
make && make install

5、最后添加www用户,启动Nginx服务。


/usr/sbin/groupadd -f www
/usr/sbin/useradd -g www www
/usr/local/nginx/sbin/nginx

6、或者,你也可以直接使用以下命令:


cd /tmp
git clone git://github.com/yaoweibin/ngx_http_substitutions_filter_module.git # nginx 的过滤器模块(比http_sub_module更加灵活)
wget https://nginx.org/download/nginx-1.7.7.tar.gz
tar -xzvf nginx-1.7.7.tar.gz
cd /tmp/nginx-1.7.7
./configure \
--prefix=/www/wdlinux/nginx \ # 安装位置
--with-http_ssl_module \
--with-http_sub_module \
--with-http_gzip_static_module \
--with-http_stub_status_module \
--add-module=/tmp/ngx_http_substitutions_filter_module # 添加nginx过滤器模块
make & make install

7、Nginx的配置文件一般是在:/usr/local/nginx/conf 这个目录下nginx.conf。

8、修改了nginx.conf文件后,记得先检测一下语法是否正常:/usr/local/nginx/sbin/nginx -t,防止重启Nginx后服务器不正常。

Nginx检查语法是否正确

9、Nginx重启命令:/usr/local/nginx/sbin/nginx -s reload 或者 kill -HUP `cat /usr/local/nginx/logs/nginx.pid` 或者 service nginx resatrt

10、上面介绍的两种安装方法适合有一定VPS经验的朋友,这里还有一个适合新手朋友的安装命令:


yum -y install gcc automake autoconf libtool make
yum install gcc gcc-c++

cd /usr/local/src
wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.34.tar.gz 
tar -zxvf pcre-8.34.tar.gz
cd pcre-8.34
./configure
make
make install

cd /usr/local/src
wget https://zlib.net/zlib-1.2.8.tar.gz
tar -zxvf zlib-1.2.8.tar.gz
cd zlib-1.2.8
./configure
make
make install

cd /usr/local/src
wget https://www.openssl.org/source/openssl-1.0.1c.tar.gz
tar -zxvf openssl-1.0.1c.tar.gz

cd /usr/local/src
wget https://nginx.org/download/nginx-1.4.2.tar.gz
tar -zxvf nginx-1.4.2.tar.gz
cd nginx-1.4.2
git clone https://github.com/yaoweibin/ngx_http_substitutions_filter_module.git

./configure --sbin-path=/usr/local/nginx/nginx \
--conf-path=/usr/local/nginx/nginx.conf \
--pid-path=/usr/local/nginx/nginx.pid \
--with-http_ssl_module \
--with-http_sub_module \
--with-http_gzip_static_module \
--with-http_stub_status_module \
--with-pcre=/usr/local/src/pcre-8.34 \
--with-zlib=/usr/local/src/zlib-1.2.8 \
--add-module=/usr/local/src/nginx-1.4.2/ngx_http_substitutions_filter_module \
--with-openssl=/usr/local/src/openssl-1.0.1c

make
make install

/usr/local/nginx/nginx 

二、Nginx反向绑定域名:最基本的方法

1、下面是一段最基本的Nginx反向绑定域名代码:


server
{
    listen          80;
    server_name     freehao123.com;  
    location / {
        proxy_pass          https://www.google.com/;  
        proxy_redirect      off;
        proxy_set_header    X-Real-IP       $remote_addr;
        proxy_set_header    X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}

Nginx最基本的方法

2、你只需要修改server_name和proxy_pass的值即可。保存nginx.conf,重启Nginx,打开你的域名,就可以看到反向的效果了。

Nginx看到效果

3、如果想要反向绑定百度,直接把域名修改为百度的域名。

Nginx更换为了百度的域名

4、然后打开自己的域名,就可以看到是百度了。

Nginx绑定百度

三、Nginx反向绑定域名:带SSL证书

1、为了能够保证自己反向绑定的“安全”,一般建议使用SSL证书。SSL证书现在购买也不是很贵,参考:Namecheap SSL证书购买和SSL激活安装使用方法新Godaddy Cpanel主机安装Godaddy SSL证书方法

2、Nginx使用SSL进行反向绑定域名,修改nginx.conf如下:


   server
    {
        listen 80;
        server_name www.freehao123.com freehao123.com;
        location / {
              rewrite ^/(.*)$ https://freehao123.com$1 permanent;
        }
    }

	
	server
    {
        listen 443;
        server_name www.freehao123.com freehao123.com;

        if ($host = 'www.freehao123.com') {
            rewrite ^/(.*)$ https://freehao123.com$1 permanent;
        }
        ssl on;
        ssl_certificate /root/myssl/myssl.crt;
        ssl_certificate_key /root/myssl/privkey.key;
       

        location / {
		
		proxy_redirect off;
                proxy_set_header X-Real-IP $remote_addr;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_set_header X-Forwarded-Proto https;
                proxy_pass https://www.google.com;
                proxy_set_header Host "www.google.com";
                proxy_set_header Accept-Encoding "";
                proxy_set_header User-Agent $http_user_agent;     
        }
    }

3、代码对www和非www请求都统一到了Https的非www请求上了。ssl on是开启SSL,ssl_certificate 和ssl_certificate_key 是连接CRT和Key文件,你需要修改成你自己的路径。

Nginx使用SSL证书

4、不想购买付费的SSL证书的朋友,可以申请免费的StartSSL证书,已经被90%以上的浏览器所认可并支持:StartSSL免费SSL证书成功申请-HTTPS让访问网站更安全

Nginx使用StartSSL

四、Nginx反向绑定域名:subs_filter优化请求和解决Google验证码问题

1、上面我们已经将ngx_http_substitutions_filter_module模块编译进入到了Nginx,这个模块主要是为了将网页中的所请求都转发自己的服务器。

2、在location 中加入以下代码,类似:


location / {
		
		  proxy_redirect off;
                proxy_set_header X-Real-IP $remote_addr;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_set_header X-Forwarded-Proto https;
                proxy_pass https://www.google.com;
                proxy_set_header Host "www.google.com";
                proxy_set_header Accept-Encoding "";
                proxy_set_header User-Agent $http_user_agent;   
                
                subs_filter www.google.com freehao123.com;
                subs_filter ssl.gstatic.com freehao123.com;
                subs_filter_types text/css text/xml text/javascript;  
        }

Nginx替换关键词

3、单个IP地址如果在短时间内对Google发送大量的IP请求,会被Google判定为机器人,从而出现搜索验证码的情况,为了解决这个问题,我们可以在Http层加入以下代码,类似于:


 upstream google {
                server 74.125.139.1:80 max_fails=3;
                server 74.125.139.2:80 max_fails=3;
                server 74.125.139.3:80 max_fails=3;
                server 74.125.139.4:80 max_fails=3;
                server 74.125.139.5:80 max_fails=3;
        }

    server
    {
        listen 80;
        server_name www.freehao123.com freehao123.com;
        location / {
              rewrite ^/(.*)$ https://freehao123.com$1 permanent;
        }
    }

4、upstream google 写了Google的服务器IP地址,如果请求量非常大的话,建议多写一些。

五、Nginx反向绑定域名:使用Nginx缓存来加速访问请求

1、nginx 自带的 proxy_cache 模块可以实现访问缓存,即第二次访问可以直接从自己的服务器读取相应的数据了,而不需要再来一次中转请求了。

2、先在Http层加入以下代码,类似:


    proxy_cache_path   /home/cache/freehao123  levels=1:2   keys_zone=one:10m max_size=10g;
    proxy_cache_key    "$host$request_uri";
    server
    {
        listen 80;
        server_name www.freehao123.com freehao123.com;
        location / {
              rewrite ^/(.*)$ https://freehao123.com$1 permanent;
        }
    }

3、proxy_cache_path 是缓存目录路径,你需要提前创建好,并设置好读写权限。

4、接着在location中加入以下代码,类似于:


 location / {
		  proxy_cache one;
                proxy_cache_valid  200 302 1h;
                proxy_cache_valid  404 1m;                
                proxy_redirect https://www.google.com/ /;                
                proxy_set_header X-Real-IP $remote_addr;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_set_header X-Forwarded-Proto https;
                proxy_pass https://www.google.com;
                proxy_set_header Host "www.google.com";
                proxy_set_header Accept-Encoding "";
                proxy_set_header User-Agent $http_user_agent;     
        }

5、proxy_cache 中的值要与前面的keys_zone值相同。重启Nginx后,可以使用Https访问了。

Nginx使用SSL访问

6、同时打开缓存目录,能看到生成了缓存数据了。

Nginx看到缓存数据

六、Nginx反向绑定域名:解决Google和Gravatar无法访问的问题

1、上面的代码都是基于反向D理Google的,以下就是经部落测试有效的代码,你只需要将域名、upstream IP地址、证书路径、缓存目录等改自己的内容即可:


http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    proxy_connect_timeout      5;
    proxy_read_timeout         60;
    proxy_send_timeout         5;
    proxy_buffer_size          16k;
    proxy_buffers              4 64k;
    proxy_busy_buffers_size    128k;
    proxy_temp_file_write_size 128k;
    proxy_temp_path            /usr/local/src/cache/temp;
    proxy_cache_path /usr/local/src/cache/one  levels=1:2   keys_zone=one:10m inactive=7d max_size=10g;
    proxy_cache_key "$host$request_uri";
	upstream google {
                server 64.15.24.122:80 max_fails=3;
                server 92.19.28.214:80 max_fails=3;
                server 64.150.13.60:80 max_fails=3;       
        }
    server {
        listen 80;
        server_name www.mmtaoyi.com mmtaoyi.com;
        rewrite ^/(.*)$ https://mmtaoyi.com$1 permanent;
        location / {
            root   html;
            index  index.html index.htm;
        }

        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }
	
	server {
         listen 443;
        server_name www.mmtaoyi.com mmtaoyi.com;

        if ($host = 'www.mmtaoyi.com') {
            rewrite ^/(.*)$ https://mmtaoyi.com$1 permanent;
        }
        ssl on;
        ssl_certificate /usr/local/src/myssl/myssl.crt;
        ssl_certificate_key /usr/local/src/myssl/privkey.key;
        location / {
                proxy_cache one;
                proxy_cache_valid  200 302 1h;
                proxy_cache_valid  404 1m;
		  proxy_cache_valid 301 3d;
		  proxy_cache_valid any 1m;
		  proxy_cache_use_stale invalid_header error timeout http_502;
                proxy_redirect https://www.google.com/ /;
                proxy_cookie_domain google.com mmtaoyi.com;
                proxy_pass https://google;
                proxy_set_header Host "www.google.com";
                proxy_set_header Accept-Encoding "";
                proxy_set_header User-Agent $http_user_agent;
                proxy_set_header Accept-Language "zh-CN";
                proxy_set_header Cookie "PREF=ID=047808f19f6de346:U=0f62f33dd8549d11:FF=2:LD=zh-CN:NW=1:TM=1325338577:LM=1332142444:GM=1:SG=2:S=rE0SyJh2w1IQ-Maw";
		 subs_filter_types text/css text/xml text/javascript;
		 subs_filter ssl.gstatic.com mmtaoyi.com;
		 subs_filter www.google.com mmtaoyi.com ;
				
                }
				 location /gb {
        
                 proxy_pass https://ssl.gstatic.com/gb/;
                 proxy_set_header Accept-Encoding "";
                  }
		
        }

}

Nginx绑定Google

2、解决Gravatar头像无法显示的问题也是一样的原理,我们只需要将反向绑定的域名换成Gravatar的secure.gravatar.com就行了。

3、解决Gravatar头像不显示的代码,部落测试有效的如下:


    proxy_cache_path   /home/cache/mmtaoyi  levels=1:2   keys_zone=one:10m max_size=10g;
    proxy_cache_key    "$host$request_uri";
    server
    {
        listen 80;
        server_name www.mmtaoyi.com mmtaoyi.com;
        location / {
              rewrite ^/(.*)$ https://mmtaoyi.com$1 permanent;
        }
    }

	
	server
    {
        listen 443;
        server_name www.mmtaoyi.com mmtaoyi.com;

        if ($host = 'www.mmtaoyi.com') {
            rewrite ^/(.*)$ https://mmtaoyi.com$1 permanent;
        }
        ssl on;
        ssl_certificate /root/myssl/myssl.crt;
        ssl_certificate_key /root/myssl/privkey.key;
       

        location / {
		proxy_cache one;
                proxy_cache_valid  200 302 1h;
                proxy_cache_valid  404 1m;
		proxy_redirect off;
                proxy_set_header X-Real-IP $remote_addr;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_set_header X-Forwarded-Proto https;
                proxy_pass https://secure.gravatar.com;
                proxy_set_header Host "secure.gravatar.com";
                proxy_set_header Accept-Encoding "";
                proxy_set_header User-Agent $http_user_agent;     
        }
    }

Nginx替换相应的域名

3、访问自己的域名后,会看到是Gravatar网站的内容。

Nginx看到网站的内容

4、将自己的域名替换为Gravatar头像的域名,就能够正常显示图片了。

Nginx正常显示图片

七、Nginx反向绑定域名方法小结

1、上面介绍了三种单独安装Nginx的方法,都是经过部落测试通过的,启动了Nginx后就可以用你的浏览器打开IP地址访问到有Nginx标志的页面了。如果无法访问,建议检查VPS主机的防火墙有没有开启80和443端口,开启方法:


/sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT
/sbin/iptables -I INPUT -p tcp --dport 443 -j ACCEPT
/etc/init.d/iptables save 
/etc/init.d/iptables restart

2、ngx_http_substitutions_filter_module这个模块是用来替换反向绑定域名页面的关键词,在第三种安装Nginx的方法中增加了这个模块。像Google这样的的加载了ssl.gstatic.com这个网址的内容,我们也都一并将其替换了。

文章出自:免费资源部落 文中代码参考了:centos.bznginx.cnhack0nair.me 博主  版权所有。本站文章除注明出处外,皆为作者原创文章,可自由引用,但请注明来源。

域名注册
购买VPS主机

您或许对下面这些文章有兴趣:                    本月吐槽辛苦排行榜

在这个部落村庄里,已经有44 位神马家族成员冒出泡来在农场开始干活了
  • Jason 16

    前排

    悦听有声 回复:

    @Jason, 前排插队

    这是农场的第 1 块农田,部落批准 [Jason] 在[2014-12-8 17:54]开垦完成.
  • 老董

    这个方法可以解决一些网速问题了。

    qi 回复:

    @老董, 成本也挺大的,要一个VPS主机。

    这是农场的第 2 块农田,部落批准 [老董] 在[2014-12-8 18:02]开垦完成.
  • taloo2012

    https://buy.wosign.com 沃通免费ssl 博主看看喽 我刚开始 看

    这是农场的第 3 块农田,部落批准 [taloo2012] 在[2014-12-8 18:46]开垦完成.
  • liqiu 6

    我来了 :mrgreen:

    这是农场的第 4 块农田,部落批准 [liqiu] 在[2014-12-8 19:01]开垦完成.
  • tennfy 4

    前排

    这是农场的第 5 块农田,部落批准 [tennfy] 在[2014-12-8 19:24]开垦完成.
  • Tammy 19

    来迟了,mmtaoyi是qi的么,如果是,期望qi留着福利大家

    qi 回复:

    @Tammy, 买一年多了,一直浪费着。

    这是农场的第 6 块农田,部落批准 [Tammy] 在[2014-12-8 19:28]开垦完成.
  • 包子

    这一次是干货,收下了

    Tammy 回复:

    @包子, 好久不见了,包子

    包子 回复:

    @Tammy, 好久不见,握爪

    这是农场的第 7 块农田,部落批准 [包子] 在[2014-12-8 20:15]开垦完成.
  • geekzu 15

    :mrgreen: 我提供的gravatar正在筹备中
    暂时的: 360.avatar.geekzu.org
    以后会提供支持sslde

    qi 回复:

    @geekzu, 博主用的哪里的VPS?速度还可以。

    极雪 回复:

    @qi, 之前用阿里云,目前放在香港pangnet的虚拟主机上

    这是农场的第 8 块农田,部落批准 [geekzu] 在[2014-12-8 20:24]开垦完成.
  • 好详细,哈哈哈,收藏了

    这是农场的第 9 块农田,部落批准 [蠢蛋小丑魚] 在[2014-12-8 20:45]开垦完成.
  • 看来以后上GG不要挂dl了,直接上[url]https://mmtaoyi.com/?gws_rd=ssl[/url] :mrgreen:

    qi 回复:

    @何朝城, 这个用的美国VPS,速度太慢了,下次换个日本的VPS看看效果会不会好点。

    这是农场的第 10 块农田,部落批准 [何朝城] 在[2014-12-8 20:48]开垦完成.
  • 若水 16

    ipv6无压力。 :mrgreen:

    Tammy 回复:

    @若水, 我这校园网没有ipv6,好坑啊 :oops:

    这是农场的第 11 块农田,部落批准 [若水] 在[2014-12-8 21:11]开垦完成.
  • 飞云 1

    技术流啊。Nginx和apache做服务器的话,哪个会更加好一点?

    qi 回复:

    @飞云, 各有各的优缺点,总体而言是Nginx略好一些。

    这是农场的第 12 块农田,部落批准 [飞云] 在[2014-12-8 21:49]开垦完成.
  • Kung 23

    反@代了谷歌。。。目前网上有Hosts免fq玩舰C的我知道是利用Nginx反代。但是怎么样做到让证书显示是dmm的证书(即颁发者受信任,办法给dmm.com)

    qi 回复:

    @Kung, 是不是用了跳转?证书都是有固定的域名,反向绑定的话很难把别的域名的证书也给一块绑定的。

    石头 回复:

    @Kung, dmm登录的https不需要#就可以实现了。所以反向d的时候https部分不d就行了

    这是农场的第 13 块农田,部落批准 [Kung] 在[2014-12-9 08:44]开垦完成.
  • 苍梧 3

    哥,能搞一个windows版upupw服务器的配置吗?upupw是免安装的服务器,有Nginx版。配置一下,打包了,到别的服务器解压一下就可以用了。迁移、重用方便

    qi 回复:

    @苍梧, 文章中的代码可以适合所有的Nginx服务器,找到windows版upupw服务器的Nginx的配置文件,然后修改即可。你的意思是将这个功能整合到软件里?

    苍梧 回复:

    @qi, 汗,突然发现upupw里面已经有反d功能了。只是我没用过,不知道能不能反d谷歌

    qi 回复:

    @苍梧, 可以,不过还得修改配置文件。

    这是农场的第 14 块农田,部落批准 [苍梧] 在[2014-12-9 11:10]开垦完成.
  • binyu_J 16

    没必要自己建反向d,国内已经有garvatar镜像了,https://gravatar.duoshuo.com,https://ruby-china.org,https://gitcafe.com,直接到functions.php加一个函数就行了,而且官方的https://secure.gravatar.com/ 也可以访问的

    function mytheme_get_avatar($avatar) {
    $avatar = str_replace(array("www.gravatar.com","0.gravatar.com","1.gravatar.com","2.gravatar.com"),"gravatar.duoshuo.com",$avatar);
    return $avatar;
    }
    add_filter( 'get_avatar', 'mytheme_get_avatar', 10, 3 );

    gravatar.duoshuo.com也可以换成其他几个

    binyu_J 回复:

    @binyu_J, 对了还有人用七牛建了镜像,当然也能自己用七牛建,还有一个国外的图像处理服务也提供了镜像https://res.cloudinary.com/demo/image/gravatar/eb5d38ac8cee2ffa1be1f5ceba8e0e80[img]//res.cloudinary.com/demo/image/gravatar/eb5d38ac8cee2ffa1be1f5ceba8e0e80[/img]

    qi 回复:

    @binyu_J, 如果是没有注册的邮箱,显示的头像用多说或者其它的会不会回源,即导致打不开?

    binyu_J 回复:

    @qi, 好像是镜像,跟多说没关系,其实多说自己貌似没有使用这个镜像,因为我发现很多多说用户设置的头像丝gravatar,一样无法显示,我是用的secure.gravatar.com

    qi 回复:

    @binyu_J, 之前有换过多说的,但是发现没有头像的用户又被转到gravatar网站了,直接又不显示了。换成了secure,头像显示的速度跟不上,经常网页打开了,但是头像还没有显示出来。

    binyu_J 回复:

    @qi, 那用gitcafe呢?或者上七牛,只是七牛不能定义图片大小。secure用的是cloudflare的CDN,我这里是感觉挺快的,为了防止其他博客上的头像无法显示,我把www和012开头的那几个地址也在hosts中指向了secure的ip

    qi 回复:

    @binyu_J, 七牛和gitcafe还没有测试。在自己的VPS修改hosts文件,用户访问时可以正常打开吗?感觉这个方法不错。

    binyu_J 回复:

    @qi, 我是说有时候看别人博客的时候会卡在头像上,所以改自己电脑的hosts,改VPS上的hosts是什么意思?

    这是农场的第 15 块农田,部落批准 [binyu_J] 在[2014-12-12 13:48]开垦完成.
  • 苍梧 3

    反d谷歌有个问题,谷歌好像有限制同ip的访问次数,我d的网站让很多人使用,造成我vps的ip频繁访问谷歌,被屏蔽了。怎么整呢。。

    qi 回复:

    @苍梧, 多添加几个谷歌的IP地址就行了。

    这是农场的第 16 块农田,部落批准 [苍梧] 在[2015-4-2 09:36]开垦完成.
  • 您好,我想问下,使用国外VPS 反向d 会被 *z的 长城防火*给屏蔽掉吗?

    这是农场的第 17 块农田,部落批准 [pankui] 在[2015-8-21 09:16]开垦完成.
  • 喔靠,,不是吧。。有几个字被 和谐 掉了。。。 * (tian chao)

    这是农场的第 18 块农田,部落批准 [pankui] 在[2015-8-21 09:17]开垦完成.
  • 北岸 1

    如果是反代自己的网站是只需要把# 修改为自己的网站吗…小白一枚

    qi 回复:

    @北岸, 是的,原理是一样的。

    北岸 回复:

    @qi, 好的,学习了

    这是农场的第 19 块农田,部落批准 [北岸] 在[2015-10-21 04:33]开垦完成.
看贴要回贴有N种理由!看帖不回贴的后果你懂得的!


评论内容 (*必填):
(Ctrl + Enter提交)   

部落快速搜索栏

各类专题梳理

网站导航栏

X
返回顶部