我已经阅读了很多有关预渲染以及如何在vue js应用程序中实现它的文章。 我已经在vuejs应用程序上成功使用了https://github.com/chrisvfritz/prerender-spa-plugin/。经过一段时间的配置后,我现在有了几个[routename] .html文件(Hourra o /)。
但是现在我有点迷路了。 我正在寻找一般指导(操作方法)。
应该将Prerendenring页面用于客户端(因为它是html,它将加快速度,但是如何切换到vuejs客户端页面?)还是仅用于爬虫(如googlebot)? 如果搜寻器尝试访问页面,我应该将其重定向到上一个页面吗?
另一个问题:是否应该将这些预渲染页面添加到我的 sitemap 中?
答案 0 :(得分:1)
到目前为止,我首先了解到SPA页面的预渲染是出于SEO的原因。如果不渲染,则搜索引擎机器人将无法在使用浏览器调用页面时抓取javascript生成的内容。前提页面必须上载到服务器并在站点地图中链接。该漫游器(不支持js)将调用预渲染的html页面。如果您在浏览器启用了js的情况下调用该页面,则javascript文件(已加载到预渲染的页面中,并且启用了js的时间很长)将接管并重新渲染该页面。
请记住,您可能需要.htaccess文件才能将路由路径映射到重新渲染的文件。 可能像这样:
# .htaccess
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.html$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.html [L]
</IfModule>
我刚刚进行了第一次测试,并使其工作正常。在我的设置中 我的dist文件夹中有以下文件结构:
index.html
about/index.html
work/index.html
etc.
在我的应用中具有匹配的路线
/
/about
/work