PHP 없이 기존 홈페이지를 Nginx에서 가볍게 살려 쓰는 방법
- 공유 링크 만들기
- X
- 이메일
- 기타 앱
오래된 PHP 홈페이지를 정적 HTML로 전환하거나 다른 서버로 통합할 때의 판단 기준을 설명한다. 운영 단계에서 판단의 출발점은 ‘요청마다 바뀌는가’입니다. PHP가 단순히 공통 헤더와 본문을 조합할 뿐 결과가 사용자마다 달라지지 않는다면 빌드 시 HTML로 미리 생성할 수 있습니다.
이 글의 범위
실제 경험이나 측정 결과를 가정하지 않고, 공식 문서로 확인 가능한 개념과 적용 순서를 일반 가이드로 설명합니다. 제품 버전과 서비스 정책은 바뀔 수 있으므로 적용 전 연결된 공식 문서를 다시 확인하세요.
| PHP 없이 기존 홈페이지를 Nginx에서 가볍게 살려 쓰는 방법 핵심 판단 흐름 설명용 개념도 |
그림 1. PHP 없이 기존 홈페이지를 Nginx에서 가볍게 살려 쓰는 방법의 핵심 판단 순서를 정리한 설명용 개념도입니다. 실제 서비스 화면, 운영 로그 또는 측정 결과가 아닙니다.
정적 전환 가능성을 판단하는 기준
요청마다 바뀌는가
PHP가 단순히 공통 헤더와 본문을 조합할 뿐 결과가 사용자마다 달라지지 않는다면 빌드 시 HTML로 미리 생성할 수 있습니다.
서버 기능
로그인, 결제, 관리자 쓰기, 실시간 검색, 폼 처리처럼 서버 상태가 필요한 기능은 정적 파일로 그대로 옮길 수 없습니다. 외부 서비스나 별도 API로 분리합니다.
URL 보존
기존 검색 URL과 외부 링크를 유지할 수 있게 파일 경로와 Nginx try_files를 설계합니다. .php URL을 바꾼다면 실제 대응 페이지로만 영구 리디렉션합니다.
원본 수집
현재 페이지를 그대로 wget으로 복사하는 것만으로는 템플릿 오류와 오래된 절대 링크까지 보존할 수 있습니다. 데이터와 템플릿에서 다시 생성하는 방식이 장기 유지에 유리합니다.
보안과 운영
PHP-FPM과 관련 패키지를 제거하면 공격 표면과 업데이트 대상은 줄지만 Nginx, OS, 정적 자산의 보안 업데이트와 백업은 여전히 필요합니다.
도구보다 먼저 볼 기준
기존 PHP 사이트를 가볍게 만드는 핵심은 PHP를 무조건 없애는 것이 아니라 동적 기능과 고정 결과를 분리하는 것입니다. ‘요청마다 바뀌는가’에서 시작해 ‘서버 기능’와의 경계를 정하면 구현할 범위와 실패했을 때 확인할 지점을 구분하기 쉬워집니다.
서비스를 멈추지 않는 이관 순서
- 접근 로그와 코드에서 실제 사용하는 PHP 경로와 동적 기능을 목록화합니다.
- 정적으로 만들 수 있는 페이지를 별도 디렉터리에 생성하고 내부 링크를 검사합니다.
- 폼과 API 기능은 명시적인 외부 엔드포인트 또는 작은 백엔드로 분리합니다.
- 스테이징 Nginx에서 기존 URL별 200·301·404와 자산 로딩을 자동 검사합니다.
- 원본 백업과 되돌리기 설정을 준비한 뒤 트래픽을 전환하고 로그를 관찰합니다.
정적 파일 우선 제공 예
server {
root /srv/site/public;
index index.html;
location / {
try_files $uri $uri/ $uri.html =404;
}
}
변경 전 체크 포인트
| 확인 항목 | 질문 |
|---|---|
| 첫 기준: 요청마다 바뀌는가 | 변경 전에 전제와 목적을 확인했는가? |
| 분리 대상: 서버 기능 | 다른 책임과 섞이지 않게 경계를 정했는가? |
| 피할 패턴: 관리자와 폼 처리를 확인하지 않고 PHP 런타임부터 제거하기 | 본문에서 경고한 패턴이 남아 있지 않은가? |
| 오류와 복구 | 정상 경로뿐 아니라 실패와 되돌리기도 확인했는가? |
정적 전환에서 자주 빠지는 부분
- 관리자와 폼 처리를 확인하지 않고 PHP 런타임부터 제거하기
- 존재하지 않는 모든 URL을 index.html로 200 응답하기
- 기존 개별 글을 관련 없는 홈으로 일괄 리디렉션하기
- 절대 이미지 URL과 canonical이 예전 호스트를 가리키는 상태로 배포하기
결론
기존 PHP 사이트를 가볍게 만드는 핵심은 PHP를 무조건 없애는 것이 아니라 동적 기능과 고정 결과를 분리하는 것입니다. URL과 오류 응답을 보존하고 단계적으로 전환하면 Nginx 정적 서비스의 단순함을 안전하게 얻을 수 있습니다.
댓글
댓글 쓰기