linux|ubuntu安装prerender解决vue前后端分离后的seo问题

news/2024/5/10 14:31:37/文章来源:https://blog.csdn.net/lolgigeo/article/details/102897876

商城网站进行了前后端分离,使用vue框架对系统进行了整体重构。重构之后seo基本失效,搜索引擎的机器人无法抓取到网站的源代码,所以需要考虑解决seo的问题。结合前端人员的建议,使用prerender进行处理,具体流程如下:

一、安装node和prerender;

node --version

ubuntu16安装node的时候版本太低无法运行,需要使用命令进行校正,校正后需要重启 才能生效。

二、安装nodejs
    sudo apt-get install nodejs
    sudo apt install nodejs-legacy
    sudo apt install npm

三、更新npm的包镜像源,方便快速下载
    sudo npm config set registry https://registry.npm.taobao.org
    sudo npm config list

四、全局安装n管理器(用于管理nodejs版本)
    sudo npm install n -g

五、安装最新的nodejs(stable版本)
    sudo n stable

核实是否已安装,未安装的话先安装node;安装完毕之后使用一下方式:

git clone https://github.com/prerender/prerender.git
cd prerender
npm install
#启动server.js, 默认监听3000端口
node server.js
#安装forever进行保证运行,注意安装过程和使用过程的用户
npm install forever -g   #安装
forever start server.js  #启动应用
forever list  #显示所有运行的服务 
forever stop server.js  #关闭应用
forever restartall  #重启所有应用

另外运行server.js需要进入到对应的git目录才可以执行成功。

启动过程如果系统为安装chrome,需要先安装chrome才能成功,如下图

#下载chrome
wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
#安装
sudo dpkg -i google-chrome-stable_current_amd64.deb#如果遇到依赖问题, 再执行sudo apt-get install -f#或者sudo apt-get upgrade -f

安装成功后再次启动server.js,并保持后台运行。

二、配置nginx,注册prerender。

 1、首先注册登录 Prerender.io,并且获得个人token
 2、根据开发文档,配置对应的中间件,如Nginx,Apache等,参考配置如下

location / {try_files $uri @prerender;}location @prerender {# 将 YOUR_TOKEN替换为你的个人tokenproxy_set_header X-Prerender-Token YOUR_TOKEN;set $prerender 0;if ($http_user_agent ~* "googlebot|bingbot|yandex|baiduspider|twitterbot|facebookexternalhit|rogerbot|linkedinbot|embedly|quora link preview|showyoubot|outbrain|pinterest|slackbot|vkShare|W3C_Validator") {set $prerender 1;}if ($args ~ "_escaped_fragment_") {set $prerender 1;}if ($http_user_agent ~ "Prerender") {set $prerender 0;}if ($uri ~* "\.(js|css|xml|less|png|jpg|jpeg|gif|pdf|doc|txt|ico|rss|zip|mp3|rar|exe|wmv|doc|avi|ppt|mpg|mpeg|tif|wav|mov|psd|ai|xls|mp4|m4a|swf|dat|dmg|iso|flv|m4v|torrent|ttf|woff|svg|eot)") {set $prerender 0;}resolver 8.8.8.8;if ($prerender = 1) {# 后续将service.prerender.io替换为自己的prerender服务,如127.0.0.1:3000set $prerender "service.prerender.io";rewrite .* /$scheme://$host$request_uri? break;proxy_pass http://$prerender;}if ($prerender = 0) {rewrite .* /index.html break;}}

三、模拟蜘蛛抓取并在Prerender后台查看抓取的 页面

curl -H 'User-agent:Googlebot' 网站地址

能够查看到网页源代码中的meta标签及页面结构则代表ok。

 

以上步骤参考一下两个文档:

文档一 

文档二

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_897646.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

linux|nginx开启gzip提升网站访问速度

gzip on; #开启gzip gzip_vary on; gzip_disable "msie6"; gzip_min_length 1k; #不压缩临界值,大于1k的才压缩,一般不用改 gzip_buffers 4 16k; gzip_comp_level 6; #压缩级别,数字越大压缩的越好 gzip_types text/plain application/jav…

前后端分离的过程利用prerender解决seo问题的误区

网站进行前后端分离之后,需要解决seo的问题。本来使用的是prerender服务,具体的流程如https://blog.csdn.net/lolgigeo/article/details/102897876所述,上述链接为本人初步的尝试,但经过再次的排查发现存在一个很大的误区。首先&a…

渗透实战之对外国一网站进行的SQL盲注测试

起因:大早上体育课改成了线上,又正逢看到大佬发了一篇SQL注入文章,就想着复现一下,练练手,本篇就是记录一下渗透过程。 先判断闭合类型 1/1如下 1/0如下 两次回显不一样,说明是数字型注入,尝试…

中电信低调推出微博网站

4月27日凌晨消息,继中移动之后,中电信近日也在低调推出微博网站。这或许意味着,在多年尝试转型互联网之后,国内运营商正在围绕最新业务再次展开布局。 腾讯科技在北京某大学的校园活动中发现,中电信旗下的微博网站“…

3.cn网站分析-退出率与跳出率详解

跳出率(Bounce Rate):浏览单页即退出的次数/访问次数 退出率(Exit Rate):离开次数(包括一次访问过程中用户浏览单页即跳出的次数,也包括浏览多页后从该页面退出的次数)/进入该页的…

准确度量 持续改进—网站分析驱动目标达成

1 为什么要对网站进行分析? 首先是第一部分,我们为什么要对网站进行分析?网站分析并不是所有网站的标准配置,很多网站都没有做这个工作,他们也运营的很好。那么我们为什么需要网站分析呢? 在回答这些问题之…

python3 某网站注册脚本 自用

python脚本代码 """ 某网站经常注销账号,开发一键注册脚本,写的很烂,有很多可以优化的地方 """from time import sleepfrom selenium import webdriver from selenium.webdriver.common.by import By from selenium.webdriver.support.select i…

自己实现的网站

利用空余时间,自己用vue动手实现了一个小网站

阿里云网站备案中遇到的基本概念类问题解答

本文为介绍备案过程中涉及的基本概念类问题。这些常见问题在实际使用中会经常遇到,所以老魏在这里也是为了给自己留一个记录,以后用到的时候查看,同时也有分享给大家参考使用帮助的意思。 如何取消备案? 刚提交备案订单还未成功…

阿里云网站备案-验证备案问题解答汇总

在阿里云ICP代备案管理系统提交备案申请时,如出现该域名存在进行中的订单、该域名对应的主体信息在系统中已经存在等错误提示信息,或您想要取消进行中的备案订单,请参考本文进行操作。 1、错误提示:该域名存在进行中的订单 可能原…

动态网站在不同平台都有写什么问题!!这里给大家一些展示

目录 一、Tomcat启动失败 1、错误1 2、错误2 3、Maven模块相互依赖错误 二、Spring Mvc 1、错误1 三、项目编写过程 1、springmvc无法跳转页面404 2、Maven工程pom.xml顶头红叉无报错 3、IDEA无法使用JQuery 4、JSP的设置路径报错 5、SpringBoot查询数据报错 四、…

java web电脑网站微信扫码支付(Servlet+JSP)

上篇文章写到了app开发中的微信支付和支付宝支付连接:https://blog.csdn.net/qq_35318713/article/details/92832397, 这次再把电脑网站扫码支付的过程记录一下,其实原理上还是差不多,就是多了一个生成二维码的过程。 上代码&am…

MyCms 自媒体 CMS 系统 v2.6,SEO 优化升级

MyCms 是一款基于Laravel开发的开源免费的自媒体博客CMS系统,助力开发者知识技能变现。 MyCms 基于Apache2.0开源协议发布,免费且不限制商业使用,欢迎持续关注我们。 V2.6 更新内容 新增:SEO-URL优化插件 新增:文章…

轻松实现织梦网站数据迁移到新站点

众所周知,织梦已经开始收费了,这对国内版权意识增强应该不算坏事,但想要免费使用又不想惹麻烦的站长们就有点麻烦了。 有不少朋友来问,我们 MyCms 支不支持织梦数据迁移,目前我们已经实现一键导入织梦的原文章和商品了…

开源多语言商城 CMS 企业建站系统,MyCms v3.9 发布

MyCms 是一款基于 Laravel 开发的开源免费的开源多语言商城 CMS 企业建站系统。 MyCms 基于 Apache2.0 开源协议发布,免费且可商业使用,欢迎持续关注我们。 V3.9 更新内容 新增:模板自定义配置 新增:读取模板配置函数 新增&…

网站架构

百科名片 网站架构 网站架构,一般认为是根据 客户需求分析的结果,准确定位网站目标群体,设定网站整体架构,规划、设计网站栏目及其内容,制定 网站开发流程及顺序,以最大限度地进行高效资源分配与管理的设计…

转载:程序员实用工具网站

转载 版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 本文链接: https://blog.csdn.net/m0_38106923/article/details/100130354 目录 1、搜索引擎 2、PPT 3、图片操作 4、文件共…

http://www.miuo.com 我的网站.密友地带,RSS Home,密友,RSS,XML

http://www.miuo.com http://miuo.com http://www.miuo.com/syndication.axd 密友科技资讯[miuo.com]_致力于从世界日新月异的科技信息中获取最大的信息价值,提供简明IT新闻,IT业界资讯,提供讨论平台,报道即时信息,讨论热烈的新闻、评论、…

10个设计最经典的web2.0网站

10个设计最经典的web2.0网站 <script type"text/javascript"> </script><script src"http://pagead2.googlesyndication.com/pagead/show_ads.js" type"text/javascript"> </script> 做好一个网站&#xff0c;不仅要在服…

源代码Search网站 www.krugle.com

推荐一个相当好的源代码搜索网站, www.krugle.com . 可以根据某段代码进行搜索,搜索结构可以是某段代码,或者某个工程. 支持相当多的程序开发语言. 感兴趣的可以去看看 ^_^ 界面如下: