diff --git a/README.md b/README.md index 4c6658d8..e31fe02a 100644 --- a/README.md +++ b/README.md @@ -42,7 +42,32 @@ sudo -u www-data git clone https://storage.hided.net/gitea/devsam/core.git sudo -u www-data git clone https://storage.hided.net/gitea/devsam/image.git ``` -> 이미지는 hook/git_hook.php을 통해 동기화되며, 서버 설치 과정에 이미지 갱신 키를 지정하는 것으로 '훼' 서버 업데이트 시 동기화됩니다. 이미지 서버가 게임 서버와 별개여도 동작하나, php와 git을 지원해야합니다. +> 이미지는 Gitea webhook을 기본으로 동기화합니다. Webhook 전달이 누락된 경우에도 서버 설치 과정에서 이미지 갱신 API와 `core` 전용 비밀값을 지정하면 게임 서버 업데이트 명령이 서명된 동기화를 요청합니다. 이미지 서버의 브랜치 변경 권한은 부여되지 않습니다. + +CLI에서 수동으로 복구 동기화를 요청할 수도 있습니다. + +```sh +IMAGE_SYNC_SECRET_FILE=/run/secrets/image_sync_core_secret \ +php scripts/sync-image-repository.php +``` + +Ref의 사용자 아이콘 원격 업로드 구현은 기본적으로 꺼져 있습니다. 이미지 서버의 +`image_upload_core_secret`과 동일한 값을 Git 제외 파일 +`d_setting/image_upload_core_secret`에 저장한 뒤 실제 +`d_setting/ServConfig.php`에서 다음 값만 변경하면 기존 화면을 그대로 둔 채 +원격 bind 저장소로 전환됩니다. + +```php +public static $remoteUserIconUploadEnabled = true; +public static $remoteUserIconUploadPath = 'https://sam-image.hided.net'; +public static $remoteUserIconUploadSecretFile = 'd_setting/image_upload_core_secret'; +``` + +플래그가 `false`이면 기존 `d_pic` 및 `IMGSVR=1` 동작을 유지합니다. `true`이면 +PHP 서버가 인증 사용자와 이미지 규격을 먼저 검사한 후 60초 HMAC 권한으로 +이미지 서버에 직접 업로드하고 `IMGSVR=0` 공유 이미지 경로를 저장합니다. +국방·외교 등 TipTap 편집기 첨부 이미지도 같은 플래그로 `/uploads/core/` bind +저장소로 전환됩니다. 공유 비밀값은 브라우저나 Cloudflare로 보내지 않습니다. ### 설치 @@ -67,4 +92,4 @@ Database 수는 로그인 관리 서버 1개, 내부 서버 7개로, 총 8개의 * MIT License * GPL 2.0 또는 이후 -만약 별도의 라이선스를 적용하고자 할 경우 Hide_D에게 문의하여 주십시오. \ No newline at end of file +만약 별도의 라이선스를 적용하고자 할 경우 Hide_D에게 문의하여 주십시오. diff --git a/f_install/install.php b/f_install/install.php index 751fe4da..b4f9b838 100644 --- a/f_install/install.php +++ b/f_install/install.php @@ -86,21 +86,28 @@ require(__DIR__ . '/../vendor/autoload.php');