Ответ 1
Если вы подключаете свой Cloud-проект с Firebase, вы можете подключить свои HTTP-функции Cloud Firebase для хостинга URL-адресов.
Я не вижу нигде возможности настроить собственный домен для моей Облачной функции Google при использовании HTTP-триггеров. Похоже на довольно серьезное упущение. Можно ли использовать собственный домен вместо своего домена location-project.cloudfunctions.net
или какой-либо обходной путь к тому же эффекту?
Я прочитал статью, предлагающую использовать CDN перед функцией с URL-адресом функции, указанным в качестве зоны вытягивания. Это будет работать, но приведет к ненужным затратам - и в моем сценарии ни один контент не может быть кэширован, поэтому использование CDN далеко не идеальное.
Если вы подключаете свой Cloud-проект с Firebase, вы можете подключить свои HTTP-функции Cloud Firebase для хостинга URL-адресов.
Я исправляю эту проблему, используя Proxy на Nginx, Apache или аналогично. В моем случае через 2 недели тестирования Firebase и Load Balance я нашел это решение и отлично работаю с HTTPS моего собственного домена.
https://github.com/presslabs/gs-proxy/blob/master/nginx.conf
Или вы можете проксировать вложенную папку, используя это разрешение
upstream gs {
server storage.googleapis.com:443;
keepalive 128;
}
server {
## YOUR CURRENT CONFIG ##
location ~ /cdn/(.*)$ {
proxy_set_header Host storage.googleapis.com;
proxy_pass https://gs/BUCKETNAME/subpath/$1;
proxy_http_version 1.1;
proxy_set_header Connection "";
proxy_intercept_errors on;
proxy_hide_header alt-svc;
proxy_hide_header X-GUploader-UploadID;
proxy_hide_header alternate-protocol;
proxy_hide_header x-goog-hash;
proxy_hide_header x-goog-generation;
proxy_hide_header x-goog-metageneration;
proxy_hide_header x-goog-stored-content-encoding;
proxy_hide_header x-goog-stored-content-length;
proxy_hide_header x-goog-storage-class;
proxy_hide_header x-xss-protection;
proxy_hide_header accept-ranges;
proxy_hide_header Set-Cookie;
proxy_ignore_headers Set-Cookie;
}
# location / { ... #
}
В зависимости от вашей потребности вы должны активировать Access-Control-Allow-Origin в облачном хранилище.
Прокси дешево, тогда Баланс нагрузки, и если вам нужно SEO, это хороший выбор.