Rejected request to participate in Google AdSense (Phase 1) - angularjs

I am trying to register my web app for the service of Google AdSense.
After five attempts are still stuck in the first phase for the error: Content insufficient.
My web app is a search engine for youtube, developed with AngularJs and NodeJs
AngularJS fully embraces the asynchronous model and this is what creates problems for Google's crawlers. So I implemented the library prerender.io and I have set up the meta tag to fix any problems with the # of Angular.
 
<meta name = "fragment" content = "">
I also prepared the sitemap.xml within the site, and that index the pages through the portal of google for webmasters.
The site being a search engine, does not have static content and reach, so I also added some texts and descriptions in the page principle, which houses the other partial files.
Despite these changes, I could not pass the first stage, how can I do to fix?
I'm not making all the necessary steps for a web app Angular?

To be approved in Google Adsense you need about 10 topics of 400 words. The content should be unique. According to Google Adsense TOS it is not allowed to put ads in pages having copied content. So in your case if you provide search results you will provide copied content.

Related

How to get 404 status code response for React.js & Firebase (GCP) Hosting app

I recently took on a new client who had an existing web presence with their domain, and the old build structure of the links, Google is still indexing those sub-title links on the search result for the company as the old links. I have re-submitted the sitemap on Google Search console, tried re-indexing them individually, and also tried submitting removal requests for domains with certain suffixes. None of this has changed the links Google is bringing up in search, still the old links. The proper links are scattered in there, but not the top results.
I asked to the Google Search forum and we found that the pages are still returning a 200 status code, and not a true 404 status code when the page does not exist on the site (see below). My app is built with React.js and hosted with Firebase Hosting on Google Cloud Platform. I am not seeing a lot of information online on how to fix this issue I am having so my Error Boundary in React is sending a true 404 error. Or if client side status code sending is not possible, then doing so on the Firebase side. Any ideas out there on how to fix the primary issue of Google promoting dead links under main link for a website?

How to redirect a wildcard subdomain in GCP to a static site in a folder in a Google bucket while still displaying the subdomain in the URL?

We want to map subdomains to static sites hosted in folders within a GCP bucket. From a non-technical perspective, this is identical to what Shopify and other website builders do with their sites for trial customers.
For example:
1. Navigate to foo.rootdomain.com
2. Display site stored inside at <Shared Google Bucket>/foo/index.html
3. Continue displaying foo.rootdomain.com in URL address bar
These subdomains/subdirectories will be created on-demand programatically when customers request them. For example, a customer could request "baz.rootdomain.com", and then we will upload their static site to the shared Google bucket's /baz subdirectory. These subdomains should all be SSL'd. We should be able to support tens to hundreds of thousands of these subdomains, all on the same root domain. That is:
abc.rootdomain.com --> <Shared Google Bucket>/abc/index.html
anothersubdomain.rootdomain.com --> <Shared Google Bucket>/anothersubdomain/index.html
foobar.rootdomain.com --> <Shared Google Bucket>/foobar/index.html
<ANY_TEXT>.rootdomain.com --> <Shared Google Bucket>/<ANY_TEXT>/index.html
I started by looking into Google's load balancers and URL maps to handle these, but AFAICT, these can only map to explicit resources rather - so they could be mapped to a backend bucket which redirects to a specific bucket, but couldn't be mapped to a parameterized bucket based on the subdomain. This SO answer explains how to map wildcard routes to specific resources, which doesn't work for this use-case.
I also looked into hosting a service at Google's App Engine and doing routing via dispatch.yaml because subdomains need to be listed out explicitly and there is a limit of 20 routing rules, so we'd need to keep creating them for every 20 subdomains, which wouldn't scale.
It looks like in this question the author had the same problem and was able to solve it by "creating separated VM instance that actually proxying requests to the google bucket". I looked up 'GCP vm proxy requests to google bucket' and wasn't able to figure out what this means, or how to do it. This doc page talks about using proxies to keep files private, which isn't what we're trying to do, and was very confusing to read through in general.
How can we approach this issue?

AngularJS and Google

I have a PHP website which is currently not using AngularJS. I'd like to change its design and while I'm at it, start using AngularJS to make a SPA website. This website contains programming tutorials, so its position in google search result is crucial. I've been searching recently to see if AngularJS can be used in that case and the most interesting post I found is this one : Google bot crawling on AngularJS site with HTML5 Mode routes
I'd like to know if my website will still be referenced the same way if I use AngularsJS. I'll pay attention that URL stays the same, but will the Google bot be able to crawl my website the same way it does now ? I need to be sure because I don't want to loose all my traffic because Google is no longer able to crawl my site.
Google now runs JavaScript and can index AngularJS sites.
Source
Some caveats though: most top ranked search results are still server-rendered, so how the Google algorithm ranks your site is unclear. Also other search engines such as Bing may not be able to read your site.

How does one google app engine app serve multiple domains?

Or can it be done?
For example, I want to help a few friends to setup their shopping cart websites. They have their website domain names already purchased. But I want to pay one google app engine application at www.mywebsite.com, and I want to "forward" their domain to www.mywebsite.com/friend1, www.mywebsite.com/friend2. In this way, I want their customers see their website which could be http://www.friend1.com, but they are actually served by one single app engine application.
In my application, I know how to get the path analyzed so I can go to datastore to serve diffrent pages, html. So the question is just how or can one google app engine be forwarded from different domains. Thanks!
I'm not quite sure what is your exact meaning of "forward", but I try to answer for different situations.
If you want the browser to keep displaying www.friend1.com all the way without ever showing www.mywebsite.com, you should have friend1.com setup as a Google App account, and add their domain into your application (just like you did for your own domain). This way, all traffic to www.friend1.com (or what ever subdomain they pick) goes to your appengine app. And your App should detect the domain of the http request and response accordingly.
If you just want a "redirect"... that means, user goes to www.friend1.com will have their browser auto goes to www.mywebsite.com/friend1 and displaying it in the URL bar , well, just setup one index.html page in www.friend1.com and add meta refresh header in the file. Or use any server side redirect method.

GAE Mailhandler to Google Analytics

I'm running an app on GAE that does a number of things. One of those things is receiving an email with attachment and responding with a mail with a CSV attached to it. The category of people that use this option, never visit the site.
Would it be possible to add something to my mailhandler so that every mail received is processed as a page visit in Google Analytics?
I'm using Jinja2 as framework.
You can use Google Analytics for Mobile Websites. It allows for server-side invocation.
Basically it just produces an image url that triggers GA when loaded in mobile site. In your case you should invoke this url with your own parameters. Here is an example Url:
http://www.google-analytics.com/__utm.gif?utmwv=4&utmn=769876874&utmhn=example.com&utmcs=ISO-8859-1&utmsr=1280x1024&utmsc=32-bit&utmul=en-us&utmje=1&utmfl=9.0%20%20r115&utmcn=1&utmdt=GATC012%20setting%20variables&utmhid=2059107202&utmr=0&utmp=/auto/GATC012.html?utm_source=www.gatc012.org&utm_campaign=campaign+gatc012&utm_term=keywords+gatc012&utm_content=content+gatc012&utm_medium=medium+gatc012&utmac=UA-30138-1&utmcc=__utma%3D97315849.1774621898.1207701397.1207701397.1207701397.1%3B...
See here for a full list of parameters.

Resources