|
|
@@ -19,6 +19,7 @@ set $_port '';
|
|
|
set $_ref '';
|
|
|
set $_ori $http_origin;
|
|
|
|
|
|
+set $_acao '';
|
|
|
|
|
|
# 获取并删除 flag 参数
|
|
|
# 参数格式: isHttp .. port
|
|
|
@@ -33,6 +34,14 @@ if ($args ~
|
|
|
# TODO:未考虑协议和端口,下面的 cors 也有这问题
|
|
|
if ($http_referer ~ ^https://(?<_vhost>[^/]+)(?<_path>.*)) {
|
|
|
set $_ref https://$_vhost_to_rhost$_path;
|
|
|
+ set $_acao https://$_vhost;
|
|
|
+}
|
|
|
+
|
|
|
+if ($_ori) {
|
|
|
+ set $_acao $_ori;
|
|
|
+}
|
|
|
+if ($_acao = '') {
|
|
|
+ set $_acao '*';
|
|
|
}
|
|
|
|
|
|
# ServiceWorker 的 fetch 强制 cors 模式,
|
|
|
@@ -59,7 +68,7 @@ more_clear_headers
|
|
|
|
|
|
more_set_headers
|
|
|
'access-control-allow-credentials: true'
|
|
|
- 'access-control-allow-origin: *'
|
|
|
+ 'access-control-allow-origin: $_acao'
|
|
|
'strict-transport-security: max-age=99999999; includeSubDomains; preload'
|
|
|
;
|
|
|
|