雅荷心语博客
雅荷心语
心之所向便是光
  • 首页
  • 前端之旅
  • 后端之路
  • 软件工具
  • 心灵鸡汤
  • 心路历程
  • 视频资料
  • 关于我们
    • 关于我
    • 关于我
  • 微信平台
    • 业务合作
  • 首页
  • 前端之旅
  • 后端之路
  • 软件工具
  • 心灵鸡汤
  • 心路历程
  • 视频资料
  • 关于我们
    • 关于我
    • 关于我
  • 微信平台
    • 业务合作
  • 关注本站
    • 微信
    • 微博
    • 腾讯微博
    • Twitter
    • Facebook
    • RSS订阅
Hi, 请登录     我要注册     找回密码

研究院 – thinkphp配合vue history 模式 配置

2017-08-10 分类:前端之旅 / 后端之路 阅读(6208) 评论(0)

因为想做SEO优化,但是vue做的项目, 所有的地址后面都加了#/ ,所以想办法改成了 history ,并且成功生效!

首先, 编译vue项目后,入口是index.html~~,

我们thinkphp 新增一个控制器,来载入这个index.html模板,记得配置好vue路径!

比如我的vue 项目放在 /app/public/start/ 下面, 我编译完成后, 如果想直接访问到,

那我的所以资源地址必须是 域名/app/public/start/xxx.xx

好长好丑有木有!

于是,我就把项目编译到了根目录的某个文件夹,配置如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
build: {
    env: require('./prod.env'),
    index: path.resolve(__dirname, '../../index.html'), //主要是这里,
    assetsRoot: path.resolve(__dirname, '../../'), //还有这里
    assetsSubDirectory: 'static',
    assetsPublicPath: '/index/', //这里是资源地址目录
    productionSourceMap: true,
    // Gzip off by default as many popular static hosts such as
    // Surge or Netlify already gzip all static assets for you.
    // Before setting to `true`, make sure to:
    // npm install --save-dev compression-webpack-plugin
    productionGzip: false,
    productionGzipExtensions: ['js', 'css'],
    // Run the build command with an extra argument to
    // View the bundle analyzer report after build finishes:
    // `npm run build --report`
    // Set to `true` or `false` to always turn it on or off
    bundleAnalyzerReport: process.env.npm_config_report
  },

这样的话, 我编译到了根目录的index目录里, 所以我访问

xxx.he29.com/index/ 就能访问到项目,

接下来就该php出场了,

php 新增一个控制器来载入模板

1
2
3
4
5
6
7
8
9
10
11
12
public function index(){
        if(isMobile2()){
            // 手机模式载入这个
            return view('./start/index.html');
        }else{
            $seo = makeSEO($_SERVER['REQUEST_URI']);
             //暂时无视seo,下一篇再讲
            $this->assign('seo',current($seo));
           // 否则载入这个
            return view('./index/index.html');
        }
    }

载入后,访问控制器,应该能载入进来文件了,如果载入错误, 建议查看资源路劲是否正确,

但是我们的前端路由和php路由重合了,无法载入啦!!!

开始配置nginx,让我们所有访问 都定向到这个控制器!

1
2
3
4
5
6
7
8
9
10
11
# nginx rewrite rule
rewrite ^(.*?)/admin/$   $1/index.php/admin      break;
rewrite ^(.*?)/index/$   $1/index.php/index      break;
rewrite ^(.*?)/api/$     $1/index.php/api      break;
rewrite ^(.*?)/app/([a-zA-Z0-9_]+)$   $1/index/index.html      break;
rewrite ^(.*?)/tool/$   $1/index.php/tool      break;
rewrite ^(.*?)/category/.*?-(d+)-(d+).html$  $1/list.html?id=$2&page=$3      break;
rewrite ^(.*?)/tag/([^/]+)/?$   $1/tag.html?w=$2        break;
rewrite ^(.*?)/tag/([^/]+)/(d+)$    $1/tag.html?w=$2&page=$3              break;
rewrite ^(.*?)/article/([a-zA-Z0-9_]+)/(.*)$   $1/index.php/article?mod=$2&id=$3     break;
# end nginx rewrite rule

于是 , 整个项目就跑起来了!

接下来,我们来探索关于SEO的部分!

ps:由于是探索阶段, 可能上文部分地方有误差!

分享到:更多 ()

相关推荐

  • AI 编辑器 cursor 如何禁止自动更新
  • AI 编辑器 cursor 工具栏改成和 vscode 一样的左侧 竖向展示
  • 将docker安装到D盘或者其他目录
  • 使用 python 给音频增加水印,剪辑压缩后不丢失!
  • nodejs 脚本打包为可执行文件
  • 初学 python 笔记
  • nodejs 同时运行多个脚本
  • 让你的照片动起来
关于我

小天明 北京·朝阳 前端搬砖工程师

碎碎念):(来自公众号)

热门文章

  • 踩坑记录——iphone上safari开启隐身模式时localStorage变为只读-雅荷心语博客踩坑记录——iphone上safari开启隐身模式时localStorage变为只读2017-02-21评论(4)
  • 程序员是怎样一群人-雅荷心语博客程序员是怎样一群人2015-12-08评论(3)
  • 百度你个大毒瘤 - 吐糟博客这几天打不开事情-雅荷心语博客百度你个大毒瘤 – 吐糟博客这几天打不开事情2015-12-28评论(2)
  • PHP 非对称加密 openssl 加密及解密方法-雅荷心语博客PHP 非对称加密 openssl 加密及解密方法2016-05-17评论(2)
  • PHPStorm10 下载安装破解汉化-雅荷心语博客PHPStorm10 下载安装破解汉化2015-12-15评论(2)
2025年7月
一 二 三 四 五 六 日
« 六    
 123456
78910111213
14151617181920
21222324252627
28293031  

最新评论

  • 前端小武 8年前 (2017-04-06)说:
    我看到了layer
  • 丁艳平 8年前 (2017-03-03)说:
  • Dawn 9年前 (2016-09-16)说:
    call_user_func_array最后的例子是错哦,你用bc方法去调用类里 另外一个方法就知道问题所在了。情况1.调用非静态方法 第一个参数应该传[类的实例,调用方法] (既然有类实例了直接-&
  • Dawn 9年前 (2016-06-21)说:
    tp框架设置了全局捕获异常的,这也没什么。坑的是 他捕获了异常。然后全部返回404。。。不知道的 还以为自己网站被删除了
  • Dawn 9年前 (2016-05-17)说:
    构造函数里的判断 用异常机制可能更好一些

其他类型

  • 芊云全景
  • 配音兔AI配音神器

博客类型

  • 芊云全景
  • 配音兔AI配音神器

左邻右舍

  • 易水寒
  • 楼教主
  • 芊云全景
  • 贤心
  • 配音兔AI配音神器

雅荷心语博客 -心之所向便是光

联系我们关于我们

© 2025 雅荷心语博客   网站地图