chore: 운영 사이트 오픈 설정
This commit is contained in:
@@ -12,11 +12,10 @@
|
||||
|
||||
## 현재 목표
|
||||
|
||||
1. 임시 안내 페이지를 Cafe24 기본 도메인에 배포
|
||||
2. 실제 보유 도메인을 호스팅에 연결하고 DNS 정상화
|
||||
3. HTTPS 인증서 적용
|
||||
4. MariaDB 접속 및 기본 스키마 준비
|
||||
5. `design/` 시안을 기준으로 본 사이트 구현
|
||||
1. `https://gtsit.co.kr` 운영 사이트 안정화
|
||||
2. 관리자와 문의 접수 운영 검증
|
||||
3. 백업·모니터링·개인정보 파기 일정 확정
|
||||
4. 검색엔진 등록과 출시 후 회귀 QA
|
||||
|
||||
## 상태 표기
|
||||
|
||||
|
||||
@@ -138,8 +138,8 @@ public/
|
||||
- 이미지 없는 게시글 카드: 글을 숨기지 않고 `GTS` 로고와 카테고리 색상을 사용한 16:9 브랜드 플레이스홀더 표시, 대표 이미지 등록 시 실제 이미지 우선
|
||||
- 회사 정보: 관리자 화면에서 연락처·주소·사업자 정보를 DB 설정값으로 관리
|
||||
- 오시는 길: NAVER Cloud Dynamic Map으로 주소 기반 지도와 회사 마커 표시, API 오류 시 네이버 지도 검색 링크 제공
|
||||
- 운영 임시 페이지: 본 사이트 배포 전까지 `public/index.html` 유지
|
||||
- 운영 테스트 경로: `/site-preview-7c2a91f4`, 애플리케이션은 웹 루트 밖에 두고 공개 에셋과 프런트 컨트롤러만 노출
|
||||
- 운영 사이트: `https://gtsit.co.kr`에서 본 사이트 공개, 애플리케이션은 웹 루트 밖의 `gtsit-app-20260810`에 배치
|
||||
- 이전 테스트 경로: `/site-preview-7c2a91f4`, 운영 전환 후 비교·복구용으로 유지하며 검색엔진 색인 차단
|
||||
|
||||
## 6. 디자인 구현 전 수정 원칙
|
||||
|
||||
@@ -175,7 +175,7 @@ public/
|
||||
9. 본 사이트 스키마와 애플리케이션 배포
|
||||
10. 보안, 백업, 알림, 최종 회귀 QA
|
||||
|
||||
정식 전환 전에는 운영 루트를 임시 안내 페이지로 유지하고 `https://gtsit.co.kr/site-preview-7c2a91f4/`에서 테스트합니다. 경로 접두사는 링크, 폼, 리디렉션, 업로드, 세션 쿠키에 일관되게 적용하며 검색엔진 색인을 차단합니다.
|
||||
2026-08-10 운영 루트를 본 사이트로 전환했습니다. 웹 루트에는 공개 에셋·업로드 디렉터리·운영 진입 파일만 두고, PHP 애플리케이션은 웹 루트 밖에 배치합니다. 이전 테스트 경로는 비교·복구용으로 유지하며 경로 접두사와 검색엔진 차단 설정을 유지합니다.
|
||||
|
||||
## 9. 미확정 의사결정
|
||||
|
||||
|
||||
@@ -162,13 +162,17 @@
|
||||
- [x] [Codex] 업로드 디렉터리 PHP 실행 차단 설정 작성
|
||||
- [ ] [사용자] 하드 용량 및 트래픽 알림 수신처 결정
|
||||
- [ ] [공동] 용량 및 트래픽 알림 활성화
|
||||
- [ ] [공동] 검색 봇 차단 정책과 공개 시점 결정
|
||||
- [x] [공동] 검색 봇 차단 정책과 공개 시점 결정
|
||||
- [x] [Codex] 공개 페이지 허용·관리자와 비공개 문의 조회 차단 `robots.txt` 배포
|
||||
- [x] [Codex] 공개 페이지와 게시글 6건 `sitemap.xml` 배포
|
||||
- [ ] [사용자] 대표 메일 서비스 결정
|
||||
- [ ] [공동] Cafe24 백업 외 별도 외부 백업 위치 결정
|
||||
- [ ] [Codex] 운영 QA 전체 실행
|
||||
- [ ] [공동] 임시 페이지를 본 사이트로 전환
|
||||
- [x] [공동] 임시 페이지를 본 사이트로 전환
|
||||
- [ ] [Codex] 출시 후 DNS, HTTPS, 오류 로그, 문의 흐름 재확인
|
||||
|
||||
진행 메모: 2026-08-04 기존 임시 안내 페이지는 `https://gtsit.co.kr/`에 유지하고 본 사이트 테스트 빌드를 `https://gtsit.co.kr/site-preview-7c2a91f4/`에 배포했습니다. 테스트 경로는 `X-Robots-Tag`와 HTML robots 메타로 색인을 차단하며, 세션 쿠키 경로도 테스트 경로로 제한합니다.
|
||||
|
||||
지도 연동 메모: 2026-08-05 Client ID `0xuekem2qn`을 `ncpKeyId`로 등록했습니다. 고정된 회사 위치는 주소 변환 API를 매번 호출하지 않고 확인된 위·경도로 표시하며, `Dynamic Map`만으로 회사 마커를 렌더링합니다. 지도 SDK 로드·인증 실패 시에도 주소와 네이버 지도 검색 링크를 유지합니다.
|
||||
|
||||
운영 오픈 메모: 2026-08-10 기존 임시 페이지와 루트 설정을 `.deploy-backup-20260810-production-open`에 보존하고 `https://gtsit.co.kr`을 본 사이트로 전환했습니다. 운영 앱은 웹 루트 밖의 `gtsit-app-20260810`, 공개 파일은 `www`에 배치했습니다. 주요 공개 경로·게시글 6건·에셋·지도·관리자 로그인·HTTPS 리디렉션·업로드 PHP 실행 차단을 확인했습니다. 일반 GET은 정상이나 `HEAD` 요청을 라우터가 404로 처리하는 호환성 항목은 로직 변경 승인 후 보완합니다. 최초 커밋 `dbb35d3`은 생성했으며 원격 저장소 HTTPS 인증 정보가 없어 push는 사용자 인증 후 재시도합니다.
|
||||
|
||||
@@ -45,6 +45,8 @@
|
||||
|
||||
테스트 배포 기록: 2026-08-04 `https://gtsit.co.kr/site-preview-7c2a91f4/`에 본 사이트를 별도 라우팅했습니다. 홈·블로그·문의·개인정보·문의 조회·관리자 로그인은 200, 비로그인 관리자 경로는 테스트 경로의 로그인으로 302, 없는 경로는 404를 반환했습니다. CSS·JavaScript 에셋 4종은 모두 200이며 기존 운영 루트 임시 페이지도 200과 기존 문구를 유지합니다.
|
||||
|
||||
운영 오픈 기록: 2026-08-10 `https://gtsit.co.kr` 운영 루트를 본 사이트로 전환했습니다. 홈·블로그·문의·개인정보와 공개 게시글 6건은 GET 200, 없는 경로는 404, 비로그인 관리자는 `/admin/login`으로 이동했습니다. 공개 canonical에서 테스트 경로가 제거되고 공개 화면에는 robots 차단이 없으며 관리자 화면은 `noindex,nofollow,noarchive`를 유지합니다. 홈 1280px에서 메인 이미지 4장·서비스 아이콘 4개·최신 글 3개와 가로 넘침 없음을 확인했고, 문의 지도는 `ready`·프레임 300px·지도 298px·타일 27개·전체화면 버튼 표시 상태입니다. 운영 업로드 경로의 임시 PHP 파일 요청은 403으로 차단됐고 검사 파일은 즉시 삭제했습니다.
|
||||
|
||||
회사 정보 반영 기록: 2026-08-04 대표 이메일과 주소를 `site_settings` 및 애플리케이션 기본값에 반영했습니다. 테스트 문의 페이지에서 새 주소, 푸터에서 새 이메일·주소가 표시되고 이전 값이 남아 있지 않은 것을 확인했습니다.
|
||||
|
||||
회사명 통일 기록: 2026-08-04 공개 헤더·푸터·메타데이터, 관리자 콘솔, 게시글 작성자 기본값과 기존 초안 9건, 운영 루트 임시 페이지를 `(주)지티에스정보통신`으로 통일했습니다. 실제 응답 3개 화면에서 이전 표기 0건, 새 표기 16건을 확인했고 360·390·1440px에서 가로 넘침이 없었습니다.
|
||||
@@ -86,6 +88,7 @@
|
||||
- [ ] 여러 공개 DNS에서 결과 일치
|
||||
- [x] Cafe24 대표 도메인이 `gtsit.co.kr`로 표시됨
|
||||
- [x] HTTP와 `www`가 `https://gtsit.co.kr`로 301 리디렉션
|
||||
- [ ] `HEAD` 요청이 공개 GET 경로와 같은 상태 코드 반환
|
||||
- [ ] 기존 메일 사용 시 MX 및 TXT 레코드 보존 확인
|
||||
|
||||
진단 참고: 2026-08-04 Cafe24 자가진단은 서버 연결 및 SSL 오류를 표시했으나, 외부 HTTP/HTTPS 요청과 인증서 검증은 정상입니다. Cafe24 진단 결과만 근거로 장애 처리하지 않고 실제 응답을 함께 확인합니다.
|
||||
@@ -213,11 +216,11 @@
|
||||
|
||||
## 12. 검색, 성능 및 운영
|
||||
|
||||
- [ ] 임시 페이지 종료 후 `noindex` 제거 여부 확인
|
||||
- [x] 임시 페이지 종료 후 공개 화면 `noindex` 제거 확인
|
||||
- [x] 테스트 경로 `X-Robots-Tag`와 robots 메타 색인 차단
|
||||
- [ ] 페이지별 고유 제목과 설명 적용
|
||||
- [ ] canonical과 대표 도메인 일치
|
||||
- [ ] `robots.txt`와 사이트맵 정책 확인
|
||||
- [x] 페이지별 고유 제목과 설명 적용
|
||||
- [x] canonical과 대표 도메인 일치
|
||||
- [x] `robots.txt`와 사이트맵 정책 확인
|
||||
- [ ] 이미지 크기와 지연 로딩 적절성 확인
|
||||
- [ ] 모바일 저속 환경에서 주요 콘텐츠 표시
|
||||
- [ ] 용량 및 트래픽 알림 동작 확인
|
||||
|
||||
6
public/robots.txt
Normal file
6
public/robots.txt
Normal file
@@ -0,0 +1,6 @@
|
||||
User-agent: *
|
||||
Allow: /
|
||||
Disallow: /admin/
|
||||
Disallow: /inquiry/lookup
|
||||
|
||||
Sitemap: https://gtsit.co.kr/sitemap.xml
|
||||
13
public/sitemap.xml
Normal file
13
public/sitemap.xml
Normal file
@@ -0,0 +1,13 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
|
||||
<url><loc>https://gtsit.co.kr/</loc></url>
|
||||
<url><loc>https://gtsit.co.kr/blog</loc></url>
|
||||
<url><loc>https://gtsit.co.kr/contact</loc></url>
|
||||
<url><loc>https://gtsit.co.kr/privacy</loc></url>
|
||||
<url><loc>https://gtsit.co.kr/blog/office-lan-structure-cabling-guide</loc></url>
|
||||
<url><loc>https://gtsit.co.kr/blog/outdoor-wireless-link-installation-guide</loc></url>
|
||||
<url><loc>https://gtsit.co.kr/blog/keyphone-system-capacity-selection</loc></url>
|
||||
<url><loc>https://gtsit.co.kr/blog/cctv-recorder-essential-features</loc></url>
|
||||
<url><loc>https://gtsit.co.kr/blog/network-rack-cabling-maintenance-case</loc></url>
|
||||
<url><loc>https://gtsit.co.kr/blog/office-network-move-checklist</loc></url>
|
||||
</urlset>
|
||||
Reference in New Issue
Block a user