nginx反向代理实现站内站

市场部的要搞官网,提出了要做站内站,开会时提了要求,,,结果这个部署落在了我头上。。。。

话不多说,开搞。。

宝塔添加站点!!!!

然后只添加mysql数据库,然后网站框架好了。。。。

然后部署前端页面。。。

前端是vue打成的静态包,直接丢上去就好了。

最最关键的来了。。。。。。

本次网站搭建并不使用cms,只是站内站,文章更新的时候要用wordpress,其他的都是静态文件,下面是nginx配置,仅供参考:

location / {
            root /www/wwwroot/wwww.xxx.cn/xxx-pc;
            if ( $http_user_agent ~* "(Android|iPhone|Windows Phone|UC|Kindle)" ){
            root /www/wwwroot/wwww.xxx.cn/xxx-m;
            }
           
        }

在这里解释下,这个location的意思是,根目录的路径是/www/wwwroot/wwww.xxx.cn/xxx-pc,但是下面有一个if判定条件,如果是移动端的话,根路径就跳转到/www/wwwroot/wwww.xxx.cn/xxx-m。

因为前端表示,自适应写的很麻烦,就写了一个移动端,一个pc端,两个静态包的路径是一样的,所以就取巧,直接做个“伪”自适应,现在访问的话也是自适应的展现形式。

接下来就是站内站的操作方式了。

前端在写的时候,留了一个/blog的路径,就用这个路径来做跳转。

location /blog/ {

proxy_pass https://wp.xxx.com/;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header Host 'wp.xxx.com';
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}

这个location的意思是,当访问到根目录/blog的时候,跳转到https://wp.xxx.com/。

location后面的目录是代理目录,访问这个目录时将会把目标URL的内容返回并显示。

proxy_pass后面的是目标URL,可以填写你需要代理的站点,目标URL必须为可正常访问的URL,否则将返回错误。

基本上,加上这两条配置在宝塔站点修改的配置文件里,基本,就ok了,对了,两个站必须是同一种http协议,最好都是https协议,这个简单,宝塔一键部署就好了。

站内站的实现形式有很多,这个只是利用nginx反向代理来实现的。

以后更新文章只需要在跳转的那个网站更新就好了。(搞那么多花里胡哨的干嘛)小声逼逼。

以上就是用nginx反向代理实现站内站的方法。

点赞

发表评论

昵称和uid可以选填一个,填邮箱必填(留言回复后将会发邮件给你)
tips:输入uid可以快速获得你的昵称和头像

Title - Artist
0:00