可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试):
问题:
We're trying to develop an geoplacement app for one of our clients, and we want first to test it in out own domain.
We have signed for Google Maps JavaScript API, and we have a valid browser key and our domain, www.grupocamaleon.com, has been authorized to use that key.
But we can't make even the easiest example to run without error.
We have, in our domain and with our key, the following demo:
(1) http://www.grupocamaleon.com/boceto/aerial-simple.html
But it doesn't work, and Firebug console says:
"Google Maps API error: Google Maps API error: RefererNotAllowedMapError (link to Google documentation on RefererNotAllowedMapError) Your site URL to be authorized: (1)"
My credential page is missing the possibility of adding referrers to accept, so solutions involving adding referrers are not possible right now.
My credential Page:

Why do we get that error? How can we fix it? TIA
回答1:
I know this is an old question that already has several answers, but I had this same problem and for me the issue was that I followed the example provided on console.developers.google.com and entered my domains in the format *.domain.tld/*
. This didn't work at all, and I tried adding all kinds of variations to this like domain.tld
, domain.tld/*
, *.domain.tld
etc.
What solved it for me was adding the actual protocol too; http://domain.tld/*
is the only one I need for it to work on my site. I guess I'll need to add https://domain.tld/*
if I were to switch to HTTPS.
回答2:
According to the documentation, 'RefererNotAllowedMapError' means
The current URL loading the Google Maps JavaScript API has not been added to the list of allowed referrers. Please check the referrer settings of your API key on the Google Developers Console.
I have the Google Maps Embed API set up for my own personal/work use and thus far have not specified any HTTP referrers. I register no errors. Your settings must be making Google think the URL you're visiting is not registered or allowed.

回答3:
I tried many referrer variations and waiting 5 minutes as well until I realized the example Google populates in the form field is flawed. They show:
*.example.com/*
However that only works if you have subdomain.
or www.
in front of your domain name. The following worked for me immediately (omitting the leading period from Google's example):
*example.com/*
回答4:
According the google docs this happened because the url
on which you are using the Google Maps API, it not registered
in list of allowed referrers
EDIT :
From Google Docs
All subdomains of a specified domain are also authorized.
If http://example.com is authorized, then http://www.example.com is also authorized. The reverse is not true: if http://www.example.com is authorized, http://example.com is not necessarily authorized
So,Please configure http://www.testdomain.com
domain,then your http://testdomain.com
will start work.
回答5:

Accept requests from these HTTP referrers (web sites)
Write localhost directory path
回答6:
you show a screenshot of your api credentials page, but you have to click on "Browser key 1" and go from there to add referrers.
回答7:
Just remind that if you just change it, it may take up to 5 minutes for settings to take effect.
回答8:
http://www.example.com/* has worked for me after days and days of trying.
回答9:
Check your decklaration on site. To load the Google Maps JavaScript API, use a script tag like this
I using this declaration on my Wordpress site in function.php file
wp_enqueue_script("google-maps-v3", "//maps.google.com/maps/api/js?key=YOUR_API_KEY", false, array(), false, true);
I have set API key on this format, and its works fine
http://my-domain-name(without www).com/*
this declaration not working
*.my-domain-name.com/*
回答10:
For deeper nested pages
If you have a project in a folder for example or nested pages
http://yourdomain.com/your-folder/your-page
you can enter this in
http://yourdomain.com/*/*
The important part being /*/*/*
depending how far you need to go
It seems that the *
will not match /
or get into deeper paths..
This will give your full domain access, well unless you have deeper nesting than that..
回答11:
I got mine working finally by using this tip from Google: (https://support.google.com/webmasters/answer/35179)
Here are our definitions of domain and site. These definitions are specific to Search Console verification:
http://example.com/ - A site (because it includes the http:// prefix) example.com/ - A domain (because it doesn't include a protocol prefix) puppies.example.com/ - A subdomain of example.com http://example.com/petstore/ - A subdirectory of http://example.com site
回答12:
Removing the restrictions (to None) worked for me.