跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • 有关于前后端项目的理解,有些不明白之处
未分類
21 5 月 2020

有关于前后端项目的理解,有些不明白之处

有关于前后端项目的理解,有些不明白之处

資深大佬 : tddxx 3

我们公司现有门户网站是采用的 vue.js+java,在部署的时候通过将 vue 项目打包出静态文件( npm run build ),放到 nginx 中然后通过 nginx 访问页面。虽然可行,但碰到了一个致命的问题——seo 优化,这样打包出来的 html 页面都是利用 js 获取页面,导致百度爬虫什么也爬不出来。

在网上看了很多案例,尝试了很多方法但是效果都不太理想: 1.利用 nuxt.js 改造现有项目,但是项目已经成型,花费成本太高 2.预渲染 prerender-spa-plugin,这种方法我们也有尝试,但是发现对服务器资源消耗过大 3.淘宝的 node 中间层处理方案,将 html,js.css 放到 node 容器中,好像对我们现有项目也帮助不大。

今天突然有了个想法,我可不可以直接在服务器端 npm run dev 运行开发环境,通过 nginx 直接转发到这个端口,不打包,直接运行项目,这样爬虫是否可以爬取到内容?

大佬有話說 (12)

  • 資深大佬 : poisedflw

    要想 SEO,就老老实实的用 SSR 吧,用官方推荐的 vue-server-renderer,成本并不大。

  • 資深大佬 : crazybinggan

    说说我的方法,专门针对爬虫搞一套,样式、JS 都不用,就是路由管理比较蛋疼,好处是真特么方便、爽~

  • 資深大佬 : seki

    不能
    seo 的问题是这些内容都是 js 加载之后渲染在页面里面的,而爬虫没有办法从 html 读到
    用 dev server 也是一样的

  • 資深大佬 : ArtIsPatrick

    既然是门户网站设计之初就应该考虑到 SEO 的问题呀

  • 資深大佬 : HarryQu

    @crazybinggan 你的方案可行吗? 我之前查询了这个方案,有的人说:爬虫会伪装成正常 ip 来爬取数据,如果获取内容不一致,会被判断为作弊。

    prerender-spa-plugin 消耗资源大,可以尝试在本地构建,构建成功后,上传到服务器。不过我之前采用 prerender-spa-plugin,发现百度并不理睬我的博客,Google 倒是收录了,可能博客太烂了,嘿嘿。

  • 主 資深大佬 : tddxx

    @poisedflw 有没有具体的现有项目接入 ssr 的 demo

  • 主 資深大佬 : tddxx

    @seki 也就是说 html+ajax 异步获取爬虫也获取不了,必须要是模板引擎类的,直接返回静态页面

  • 主 資深大佬 : tddxx

    @ArtIsPatrick 为了方便就采用了 vue

  • 資深大佬 : seki

    是的,不如你就改到 nuxt 吧,把 ajax 请求从原来的地方挪动到 nuxt 的专门 api 就行。用 nuxt 甚至可以把网站做成静态的

  • 資深大佬 : red2dog

    成本高吗,vue 转 nuxt 改造,还有 react 转 next 改造我都做过。不是只需要改请求层和路由层吗。
    问题是你们既然需要 seo,那为什么最初的技术选型搞成客户端渲染呢。

  • 資深大佬 : red2dog

    在我看来,成本高只有客户端渲染转 pug 或者 EJS 这样的改造。

  • 資深大佬 : crazybinggan

    @HarryQu 你这么问还真没关注过…这边也只是简单针对特定搜索引擎爬虫 agent 去分流

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具