fix(installer): 에셋 서빙 "확인 불가" 상태에 상황 상세 안내 추가
설치 2단계 서버 요구사항 화면의 "에셋 파일 서빙 방식" 항목이 "확인 불가" 한 단어만 표시돼 어떤 상황인지 알 수 없었다. "확인 불가" 는 확장자 있는/없는 프로브 요청이 모두 실패한 상태로, 에셋 방식 문제가 아니라 앱 미응답·프록시·CSP 등 다른 원인일 수 있다. - asset_url_mode_detected_unavailable(ko/en): 두 프로브 모두 실패라는 상황, 에셋 방식 문제가 아닐 가능성, 설치를 막지 않는다는 점, 설치 후 백지면 확장자 미사용으로 전환하라는 조치까지 담아 보강. 이 키는 Step 3 감지 버튼 상태(data-msg-unavailable)와 공유되어 양쪽 화면이 함께 개선된다. - refreshAssetUrlModeCard: 경고 상태(확장자 미사용/확인 불가)에 설명 문구를 카드 아래 fix-guide-hint 로 렌더. 짧은 라벨만으로는 상황을 알 수 없던 문제 해소.
This commit is contained in:
@@ -1664,10 +1664,22 @@
|
||||
? lang('asset_url_mode_extension')
|
||||
: (detected === 'extensionless' ? lang('asset_url_mode_extensionless') : lang('asset_url_mode_unknown'));
|
||||
|
||||
// 경고 상태(확장자 미사용 자동 선택 / 확인 불가)는 "왜 그런지" 를 설명 문구로
|
||||
// 함께 보인다 — 짧은 라벨("확인 불가")만으로는 어떤 상황인지 알 수 없다.
|
||||
// "확인 불가" 는 두 프로브가 모두 실패한 상태라 에셋 방식 문제가 아니라
|
||||
// 앱 미응답·프록시·CSP 등 다른 원인일 수 있으므로 그 내용을 상세히 안내한다.
|
||||
let note = '';
|
||||
if (detected === 'extensionless') {
|
||||
note = lang('asset_url_mode_detected_extensionless');
|
||||
} else if (detected === '') {
|
||||
note = lang('asset_url_mode_detected_unavailable');
|
||||
}
|
||||
const noteHtml = note ? `<p class="fix-guide-hint">${note}</p>` : '';
|
||||
|
||||
// 카드 내부를 부분 수정하지 않고 통째로 다시 그린다 — 아이콘·수식자 클래스가
|
||||
// renderSingleItemCard 안에서 statusClass 로 함께 결정되므로, 밖에서 일부만
|
||||
// 건드리면 아이콘과 카드 색이 어긋난다.
|
||||
slot.innerHTML = renderSingleItemCard(lang('asset_url_mode'), statusClass, label, '', false);
|
||||
slot.innerHTML = renderSingleItemCard(lang('asset_url_mode'), statusClass, label, '', false) + noteHtml;
|
||||
}
|
||||
|
||||
async function detectAssetUrlMode() {
|
||||
|
||||
@@ -840,7 +840,7 @@ Firewalls or proxies may be blocking long-lived HTTP connections.',
|
||||
'asset_url_mode_help' => 'Detected automatically from your server setup. A static-file optimization rule (e.g. nginx location ~* \\.(js|css|json|png|jpg|jpeg|gif|ico|svg|woff2?)$) can intercept extension URLs and make pages fail to load; choose no extensions in that case.',
|
||||
'asset_url_mode_detected_extension' => 'Detected: file extensions work fine on this server.',
|
||||
'asset_url_mode_detected_extensionless' => 'Detected: a static-file optimization rule (e.g. nginx location ~* \\.(js|css|json|...)$) intercepts extension URLs, so no extensions was selected.',
|
||||
'asset_url_mode_detected_unavailable' => 'Could not detect. If pages fail to load after installation, try switching to no extensions.',
|
||||
'asset_url_mode_detected_unavailable' => 'Could not detect the serving mode — neither the extension nor the extensionless probe URL responded. This is usually not an asset-mode issue but a sign that the app is not yet responding at this URL (PHP/routing) or that a proxy or security rule (e.g. CSP) is blocking the probe requests. This item does not block installation, so you can continue; if pages look blank afterward, switch to no extensions under Admin > Settings > General.',
|
||||
'asset_url_mode_checking' => 'Checking…',
|
||||
'asset_url_mode_unknown' => 'Unknown',
|
||||
'core_update_github_url' => 'GitHub Repository URL',
|
||||
|
||||
@@ -840,7 +840,7 @@ ini_set(\'zlib.output_compression\', \'off\');
|
||||
'asset_url_mode_help' => '서버 설정을 자동으로 감지해 선택합니다. 정적 파일 최적화 규칙(nginx의 location ~* \\.(js|css|json|png|jpg|jpeg|gif|ico|svg|woff2?)$ 블록 등)이 확장자 주소를 가로채면 화면이 뜨지 않는데, 그 경우 확장자 미사용을 선택하세요.',
|
||||
'asset_url_mode_detected_extension' => '감지 결과: 확장자를 사용할 수 있는 환경입니다.',
|
||||
'asset_url_mode_detected_extensionless' => '감지 결과: 정적 파일 최적화 규칙(nginx location ~* \\.(js|css|json|...)$ 블록 등)이 확장자 주소를 가로채고 있어 확장자 미사용을 선택했습니다.',
|
||||
'asset_url_mode_detected_unavailable' => '감지하지 못했습니다. 설치 후 화면이 뜨지 않으면 확장자 미사용으로 바꿔 보세요.',
|
||||
'asset_url_mode_detected_unavailable' => '확장자 있는 주소와 없는 주소 모두 응답하지 않아 서빙 방식을 감지하지 못했습니다. 에셋 방식 자체의 문제라기보다, 앱이 아직 이 주소에서 정상 응답하지 않거나(PHP·라우팅 설정) 프록시·보안 규칙(CSP 등)이 프로브 요청을 막고 있을 가능성이 큽니다. 이 항목은 설치를 막지 않으니 계속 진행할 수 있으며, 설치 후 화면이 비어 보이면 관리자 > 환경설정 > 일반에서 확장자 미사용으로 바꿔 보세요.',
|
||||
'asset_url_mode_checking' => '확인 중…',
|
||||
'asset_url_mode_unknown' => '확인 불가',
|
||||
'core_update_github_url' => 'GitHub 저장소 URL',
|
||||
|
||||
Reference in New Issue
Block a user