标签: prerender

SvelteKit 中的 SSR 解释

我最近开始通过 SvelteKit 使用 Svelte,我对这个框架有一些疑问,但我无法在源代码/文档中找到任何直接答案:

  1. SvelteKit 有SSR,在文档中它说:

如果您需要从外部 API 请求数据,所有服务器端代码(包括端点)都可以访问 fetch。

  • 除了端点之外,服务器端还呈现哪些代码以及它如何决定这一点?svelte 页面脚本中的所有代码都在客户端上运行,还是其中一些代码在服务器上运行?
  • 为了在本地使用 SSR,您需要一个适配器,还是 svelte 自己启动服务器?
  • 例如,SSR如何在像Netlify这样的生产环境中工作。netlify 适配器是否用于 SSR(在netlify 函数中运行端点)?如果未提供 netlify 适配器,端点将如何/在哪里运行?
  1. 如果我想在sveltekit 项目中使用自定义 netlify 函数,需要哪些配置(除了 netlify.toml 和 netlify 适配器)才能让 netlify 识别函数目录中的函数?
  2. SSR 和预渲染之间有什么区别?SSR仅用于端点和其他js代码,预渲染用于生成Html并将其发送到客户端,然后将其与编译后的js代码一起发送到浏览器?

谢谢!

prerender server-side-rendering svelte netlify-function sveltekit

27
推荐指数
2
解决办法
2万
查看次数

无法使用npm安装prerender - "无法找到:CL.exe"

我一直在尝试PreRender.Io在我的本地机器上安装进行测试.我已经安装了Python 2.7.10.当我输入:

npm install prerender

它给出了一个错误:

C:\PreRender\node_modules\prerender\node_modules\phantom\node_modules\dnode\node
_modules\weak>if not defined npm_config_node_gyp (node "C:\Program Files\nodejs\
node_modules\npm\bin\node-gyp-bin\\..\..\node_modules\node-gyp\bin\node-gyp.js"
rebuild )  else (node  rebuild )
Building the projects in this solution one at a time. To enable parallel build,
please add the "/m" switch.
TRACKER : error TRK0005: Failed to locate: "CL.exe". The system cannot find the
 file specified. [C:\PreRender\node_modules\prerender\node_modules\phantom\node
_modules\dnode\node_modules\weak\build\weakref.vcxproj]


gyp ERR! build error
gyp ERR! stack Error: `C:\Program Files (x86)\MSBuild\14.0\bin\msbuild.exe` fail
ed with exit code: 1
gyp ERR! stack     at …
Run Code Online (Sandbox Code Playgroud)

node.js prerender npm

26
推荐指数
1
解决办法
2万
查看次数

Chrome Prerender功能每次都会被取消

我正在尝试chrome中的prerender功能,但是当我检查网络时,我可以看到任何链接都取消了请求.

chrome开发者控制台

我使用以下语法:

<link rel="prerender" href="http://example.org/index.html">
Run Code Online (Sandbox Code Playgroud)

我在http://prerender-test.appspot.com/上尝试了现场演示,得到了相同的结果.这是为什么?

更新(来自https://developers.google.com/chrome/whitepapers/prerender):

在某些情况下,在预呈现网站时,Chrome可能会遇到可能导致用户可见行为不正确的情况.在这些情况下,预呈现将被默默地中止.其中一些案例包括:

  • 注意:这不是一个详尽的清单.最后更新时间为11/10/11.

    1. URL启动下载
    2. 页面中的HTMLAudio或视频
    3. POST,PUT和DELETE XMLHTTPRequests
    4. HTTP身份验证
    5. HTTPS页面
    6. 触发恶意软件警告的页面
    7. 弹出/窗口创建
    8. 检测高资源利用率
    9. 开发者工具已打开
    10. 诸如Flash之类的插件将推迟初始化,直到用户实际访问预渲染页面.

但问题是我什么时候可以使用此功能?

javascript html5 google-chrome prerender

14
推荐指数
1
解决办法
4272
查看次数

airbnb的超新星工具可以用于angularjs web seo

noAirbnb有一个工具hypernova用于javascript视图的服务器端呈现.我想知道它是否可以用于增强基于ajax的网站的seo,就像工具预渲染一样.如果不是那么为什么?

node.js prerender angularjs server-side-rendering

13
推荐指数
1
解决办法
507
查看次数

在nginx中使用prerender和proxy

我正在尝试使用prerender.io来获取angularjs页面的快照.目前我有一个用于Web应用程序的NodeJS实例,nginx反向代理将请求从端口重定向804000.

根据prerender nginx手册(https://gist.github.com/thoop/8165802),我可以将搜索引擎机器人请求转发给prerender url,但因为我已经有了NodeJS应用程序的代理,我不知道怎么能我是prerender try_files指令.

我的问题是,我如何使用NodeJS应用程序代理和prerender指令?

javascript nginx node.js prerender angularjs

12
推荐指数
1
解决办法
4210
查看次数

如何测试预取/预渲染

我已经开始使用prefetch/prerender系统加载一些关键资源和页面.

有没有办法确保有问题的资源实际上是预先加载的?

testing html5 prefetch prerender

11
推荐指数
2
解决办法
6499
查看次数

在HTML中设置新的预呈现或预取的正确方法是什么?

<!DOCTYPE html>
<meta charset="utf-8">
<title>An HTML Document</title>
<link rel="prefetch" href="https://www.apple.com/">
<link rel="prerender" href="https://www.apple.com/">
<script>
    document.addEventListener('click', function () {
        // Prerendering https://www.apple.com/ipad on Chrome.
        // ...

        // Prefetching https://www.apple.com/ipad on Firefox.
        // ...
    }, false);
</script>
Run Code Online (Sandbox Code Playgroud)

打开页面时,https ://www.apple.com/已预呈现并在不同的浏览器上预取.单击文档后,我希望预呈现并预取其他页面,https://www.apple.com/ipad.

看来我们有两种方法可供选择.我们可以替换当前2个link元素中的URL .或者我们可以在link元素中插入2个新元素head.

在HTML中设置新的预渲染的正确方法是什么?

在HTML中设置新预取的正确方法是什么?

我尝试将Chrome中的prerender link元素的URL从https://www.apple.com/替换为https://www.apple.com/ipad.我打开Chrome的任务管理器,发现https://www.apple.com/ipad没有预先进行预先处理.唯一预呈现的页面仍然是https://www.apple.com/.所以看来这种方法不起作用?

firefox html5 google-chrome prefetch prerender

11
推荐指数
2
解决办法
1万
查看次数

预渲染:puppeteer / rendetron 和 prerender.io 的区别

我只想知道 puppeteer / rendetron 和 prerender.io 之间的基本区别是什么,以及使用此解决方案预渲染页面并在 seo 下准备页面的最佳方式。还有一个 - 我知道 rendetron 是在基本的 puppeteer 上创建的,但是 rendetron 可以做更多吗?我的意思是,如果他是在基本 puppeteer 上创建的,在这种情况下 puppeteer 应该能够完全执行 rendetron 可以做的事情,例如,为什么我应该选择 rendetron?或者我应该放弃这两个开源解决方案并选择 prerender.io ?

javascript node.js prerender puppeteer rendertron

10
推荐指数
1
解决办法
1078
查看次数

Flutter - seo 优化

我有一个主站点和一个用 flutter 编写的移动应用程序。我想在m.example.com. 但是SEO优化存在问题。有没有人有在颤振(ssr、prerender、amp 等)中实现 seo 的真实经验?或者只在没有 SEO 的网站上使用 flutter-web?

prerender dart flutter server-side-rendering flutter-web

9
推荐指数
0
解决办法
6789
查看次数

Google Chrome Prerender中的"Cookie冲突"

我一直在使用Chrome的预呈现功能

<link rel="prerender" href="/path" />
Run Code Online (Sandbox Code Playgroud)

但是在lates更新之后,当我尝试使用调试时[chrome://net-internals/#prerender].它表明预渲染因中止而中止"Cookie Conflict".

我试图调试以确保在页面加载后是否有一些ajax调用正在更改cookie,但是没有找到.预渲染仍然中止.它曾经与以前的chrome版本一起工作得很好.

html5 google-chrome prefetch prerender

8
推荐指数
1
解决办法
402
查看次数