One thing that wasn't super clear in this video was setting up the rewrites to redirect the traffic to the cloud function "only for non root requests."
Will this also work without using PWA features? Let's say I'm having a normal single page application that fetches data from an api, will bots be able to read the fetched content from third party apis? And if so, how will rendertron know when my async calls are done and when to send the snapshot?
I'm getting a Promises must be handled appropriately TsLint error in the regular user fetch request. I think it came out of nowhere after upgrading cloud functions to node8 and es2017...
This is really great ! Thanks for sharing this. It worked pretty well for me. With static links I mean. What about dynamic links with wildcards for example ?
If you`re looking for the top service to get top ranking your website, i suggest to use SpeedRankSEO. I am using it with a superb result. Just simply type speedrankseo in google and yahoo.
This does not work when i change "public":"dist" to "public":"dist/seo". If I don't change and open website I get Firebase Hosting Setup Complete and i can see the code inside the . After I change to dist/seo I see components but I don't see the code inside app root tags. Can someone help me with this?
Isnt this considered cloacking? As it would give the googlebot another experience as the user would have? Can we have an ofiicial statement that such practice would not be punished by google?
Cloaking is a gray area without any official guidelines from Google Search. The Chrome team calls rendertron an "SEO solution", so hopefully it doesn't lead to penalties when used responsibly. If in doubt, just remove "googlebot" from the user agent list.
Okay guys I really do not understand why are you happy with that. That solves just a problem with seo but what about user-first-use experience (first load of angular SPA)? If any ideas, please, let me know!!!
Thank you so much for the reply!! I have own intense of Rendertron. fetch(`${appUrl}`) .then(res => res.text()) .then(body => { res.set('Content-Type', 'text/html') .sendFile(path.join(__dirname, 'index.html')); }) Please see this code!! my website running on Heroku. social bot working!! but google does not index my page. also sometimes not working FB bot and Twitter card validator. is my code correct? I am your big fan. please help me. 😥😥😪
I'm having an issue with the child resources of my Angular app not being able to load. The function app does it's job by getting the original index.html, but then the resources like main.js (of the Angular app) are now retrieved on the function app source URL instead of the original app. How do you go about fixing that? See errors: pasteboard.co/JwmCjzt.png
SEO is a potent scope of focus for most Angular DevOps, great content!
One thing that wasn't super clear in this video was setting up the rewrites to redirect the traffic to the cloud function "only for non root requests."
Wow, great job man. Thanks for sharing this knowledge.
Thanks for watching!
This was 4 years ago.. I feel like the state of the art has moved a bit. Would you mind giving us an update of how we can do this nowadays ?
Will this also work without using PWA features? Let's say I'm having a normal single page application that fetches data from an api, will bots be able to read the fetched content from third party apis? And if so, how will rendertron know when my async calls are done and when to send the snapshot?
you are amazing bro !!!
Thank you, glad you liked it.
I'm getting a Promises must be handled appropriately TsLint error in the regular user fetch request. I think it came out of nowhere after upgrading cloud functions to node8 and es2017...
Why is meta tag updates are not showing in page source only on inspect element??
Do you need to have Firebase hosting for this to work?
+1
This is really great ! Thanks for sharing this. It worked pretty well for me. With static links I mean. What about dynamic links with wildcards for example ?
If you`re looking for the top service to get top ranking your website, i suggest to use SpeedRankSEO. I am using it with a superb result. Just simply type speedrankseo in google and yahoo.
This does not work when i change "public":"dist" to "public":"dist/seo". If I don't change and open website I get Firebase Hosting Setup Complete and i can see the code inside the . After I change to dist/seo I see components but I don't see the code inside app root tags. Can someone help me with this?
Isnt this considered cloacking? As it would give the googlebot another experience as the user would have? Can we have an ofiicial statement that such practice would not be punished by google?
Cloaking is a gray area without any official guidelines from Google Search. The Chrome team calls rendertron an "SEO solution", so hopefully it doesn't lead to penalties when used responsibly. If in doubt, just remove "googlebot" from the user agent list.
Okay guys I really do not understand why are you happy with that. That solves just a problem with seo but what about user-first-use experience (first load of angular SPA)? If any ideas, please, let me know!!!
Page load performance is determined directly by your PWA - if you designed a fast PWA, it will still be fast. Rendertron is only executed by bots.
Is it just me or twitter doesn't load the card when sharing for the first time?
If I refresh or share again it works
Thanks a tooooonn Jeff! But unfortunately it can not be used in free tier because they close outbound networking.
Intro music track id?? :D like it!
Why do you use property for og:title instead of name and why do you put og: in front of title?? Thanks
Hi I'm getting some odd error in my firebase function on fetch url
can i use rendertron with node js as a backend,instead of firebase?
Please make a video "Angular and Rendertron with Heroku"
Because it's containerized, you should be able to just push it to heroku. Maybe I'll do a docker video in the future.
Thank you so much for the reply!! I have own intense of Rendertron.
fetch(`${appUrl}`)
.then(res => res.text())
.then(body => {
res.set('Content-Type', 'text/html')
.sendFile(path.join(__dirname, 'index.html'));
})
Please see this code!! my website running on Heroku. social bot working!! but google does not index my page. also sometimes not working FB bot and Twitter card validator. is my code correct? I am your big fan. please help me. 😥😥😪
Your code looks correct to me... Hard to say. Any errors in your server logs?
no site working well! if I remove "googlebot" , then google able to render my page without Rendertron?
You're like console.log('bot detected') or something. But where can I see these logs from? from firebase functions log?
thx a lot ... you can do this with nginx instead of node ??
Hypothetically, you could use anything you want as the middleware - it just needs to intercept the request and route it accordingly.
Is Google Analytic working on this?
Is it important to use flex instead of standard env with google cloud instance? Standard is free, no?
Standard is only supported for a few runtimes like Go, Java, and Python. NodeJS is not one of them unfortunately.
Hi, if I decided to remove the googlebot, what does it mean? The site is not going to be visible for Google searches? great video btw
I'm having an issue with the child resources of my Angular app not being able to load. The function app does it's job by getting the original index.html, but then the resources like main.js (of the Angular app) are now retrieved on the function app source URL instead of the original app. How do you go about fixing that?
See errors: pasteboard.co/JwmCjzt.png
thanks for your sharing, keep going
YOU ARE GOING TO FAST!
0.75
Great content ! Thanks !
Thanks, this is awesome
Great post.
Well my mind is blown
I hear you - I thought it was too good to be true, but then it worked.
Whooooaaaaaah :0
Sooooo awseome bro
Amazing :)
I love u
Whoever ticked thumb down your finger has slipped the thumb up is just there on the left
Haha, there's always that one troll who downvotes.
dude, ya so cool
rendora is a lot better than rendertron