설치 단계와 코어 부팅의 정책이 엇갈려 있었다. 인스톨러는 root 를 자유롭게 허용하면서, 설치 후 부팅은 같은 값을 보고 확장 로딩 전체를 조용히 스킵했다. 설치는 성공하지만 이후 깨진 화면만 뜨고 원인은 로그 한 줄에만 남았다. 판정을 프레임워크 의존성 0 인 공용 SSoT 로 모아 인스톨러와 코어가 같은 답을 내게 하고, 설치 단계에서 서버 2경로로 차단하며, 설치 후 변경은 전용 에러 페이지로 드러낸다. 가드를 boot 가 아닌 미들웨어에 두어 artisan 이 죽지 않게 해 복구 수단을 남겼다. admin 은 일반 권한 운영 계정 오차단을 막기 위해 차단 목록에서 제외했다. OPcache 는 상태 조회 경로 자체가 없어 성능 저하를 인지할 방법이 없었다. 설치 단계 경고(비차단)와 관리자 정보 탭 표시를 같은 판정 SSoT 로 추가했다. 확장 로드 여부만으로는 부족해 opcache.enable 지시자까지 확인하며, ini_get 이 차단된 환경은 "확인 불가"로 폴백해 경고도 차단도 하지 않는다.
11 lines
771 B
PHP
11 lines
771 B
PHP
<?php
|
|
|
|
return [
|
|
'title' => 'Database Account Configuration Error',
|
|
'message' => 'The site cannot be displayed because of a problem with the database account configuration.',
|
|
'description' => 'While this problem persists, modules, plugins and templates are not loaded. Please correct the configuration using the guidance below.',
|
|
'blocked_reason' => 'Database superuser accounts such as root cannot be used, for security reasons. If such an account is compromised, the entire database is at risk.',
|
|
'empty_reason' => 'The database username is empty. The configuration may be missing or corrupted.',
|
|
'recovery_guide' => 'Change DB_WRITE_USERNAME in the .env file to a database account dedicated to this site, then run: php artisan config:clear',
|
|
];
|