Angular 带角度万向节的维修工和sw预切割器
我在service worker中使用了sw precache。我只在service worker中缓存了浏览器文件夹。因此服务器端渲染在service worker中不起作用。有人能帮我解决这个问题吗。如果ssr工作service worker不起作用,反之亦然 下面是我的sw precache config.jsonAngular 带角度万向节的维修工和sw预切割器,angular,angular5,service-worker,angular-universal,sw-precache,Angular,Angular5,Service Worker,Angular Universal,Sw Precache,我在service worker中使用了sw precache。我只在service worker中缓存了浏览器文件夹。因此服务器端渲染在service worker中不起作用。有人能帮我解决这个问题吗。如果ssr工作service worker不起作用,反之亦然 下面是我的sw precache config.json module.exports = { navigateFallback: '/index.html', stripPrefix: 'dist/browser', root: '
module.exports = {
navigateFallback: '/index.html',
stripPrefix: 'dist/browser',
root: 'dist/browser',
staticFileGlobs: [
'dist/browser/index.html',
'dist/browser/**.js',
'dist/browser/**.css',
'dist/browser/**.ico',
'dist/browser/assets/images/**.jpg',
'dist/browser/assets/images/**.png',
'dist/browser/assets/images/**.gif',
'dist/browser/assets/js/**/**.js',
'dist/browser/assets/js/**.js',
'dist/browser/assets/css/**.css'
],
runtimeCaching: [{
urlPattern: /^https:\/\/tg\.s3\.rfyfg\.com\//,
handler: 'cacheFirst'
}]
};
谢谢您可以选择只将服务器端呈现的内容发送给网络爬虫,以便它们为您的页面编制SEO索引 使用nginx的配置示例:
location / {
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto https;
proxy_set_header Host $http_host;
proxy_redirect off;
proxy_ignore_headers X-Accel-Expires Expires Cache-Control;
if ($http_user_agent ~* "whatsapp|googlebot|yahoo|bingbot|baiduspider|yandex|yeti|yodaobot|gigabot|ia_archiver|facebookexternalhit|twitterbot|developers\.google\.com|linkedinbot|discordbot|embedly|quora link preview|slackbot|pinterest|vkShare") {
proxy_pass http://localhost:4000; // your server
break;
}
rewrite . /static/index.html last;
}
如果缓存整个应用程序,ssr的意义是什么?若应用程序已经用服务工作者加载到客户端,为什么要再次从服务器加载它?如果您希望始终从ssr加载;为什么要缓存捆绑包文件?缓存是为了脱机目的。但为了seo目的,我使用angular universal进行服务器端渲染。谢谢。但这并不能解决我的问题。我首先对包含url的文件使用cachefirst,如“/^https:\/\/tg\.s3\.rfyfg\.com\/”。因此,它不会影响ssr。我明白了,我个人解决这个问题的方法是只将SSR发送给像facebookexternalhit、googlebot这样的网络爬虫。你也可以试试。我如何发送这个。你能提供一个例子吗?我已经编辑了我的答案,用nginx提供了一个例子。谢谢Joshua。我们使用iis节点服务器在iis中托管了我们的项目。我在查看页面源代码时,使用service worker后,我们无法查看更新的元数据和内容。但我们可以将文章发布到facebook。但我们需要在查看页面源中获取这些内容。这是我的问题