fix(settings): resolve superadmin domain from Origin before API host
Split frontends like my.goldarvin.ir were waiting on 404 retries for the API hostname, which made get_settings take ~16s. Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -292,6 +292,17 @@ class SuperAdminProgramSettingsClient
|
||||
try {
|
||||
$request = request();
|
||||
if ($request) {
|
||||
// فرانت و API ممکن است دامنهٔ جدا باشند (my.goldarvin.ir → goldarvin.gholaktala.ir).
|
||||
// سوپرادمین دامنهٔ اپ را میشناسد نه Hostِ API؛ Origin/Referer را اول بگذار
|
||||
// وگرنه ۳ origin × ۳ retry روی ۴۰۴ حدود ۱۰–۱۷ ثانیه طول میکشد.
|
||||
$origin = (string) $request->headers->get('Origin', '');
|
||||
if ($origin !== '') {
|
||||
$candidates[] = $this->normalizeHost($origin);
|
||||
}
|
||||
$referer = (string) $request->headers->get('Referer', '');
|
||||
if ($referer !== '') {
|
||||
$candidates[] = $this->normalizeHost($referer);
|
||||
}
|
||||
$forwarded = (string) $request->headers->get('X-Forwarded-Host', '');
|
||||
if ($forwarded !== '') {
|
||||
$candidates[] = $this->normalizeHost(explode(',', $forwarded)[0] ?? '');
|
||||
|
||||
Reference in New Issue
Block a user