회원가입 | 고객센터 |
DESIGNONEX
dxcms.kr
로그인 회원가입
고객센터
2. 시작 가이드

서버별 설정 파일 상세

D DX
2026.04.20 23:57(수정됨) 122 0

1. 서버별 설정 파일 상세

2.1 Apache — 루트 .htaccess

주요 규칙 설명
규칙 내용 효과
Options -Indexes 디렉토리 목록 비활성화 폴더 구조 노출 방지
RewriteEngine On mod_rewrite 활성화 URL Rewrite 사용 가능
data/uploads/ 통과 RewriteRule ^data/uploads/ - [L] 이미지 파일 직접 서빙 허용
data/, core/ 차단 RewriteRule ^data/ - [F,L] config.php, PHP 코어 접근 차단
sitemap/robots 라우팅 RewriteRule ^sitemap.*\.xml$ index.php PHP에서 동적 생성
정적 파일 통과 RewriteCond %{REQUEST_FILENAME} -f 실존 파일은 그대로 서빙
나머지 → index.php RewriteRule ^ index.php [QSA,L] 모든 동적 요청을 단일 진입점으로
PHP 파일 직접 차단 FilesMatch \.php$ index.php 외 PHP 직접 실행 불가
민감 파일 차단 .env, .log, .bak, .sql, .sh 등 설정/로그 파일 다운로드 차단
Authorization 헤더 전달 RewriteRule ^ - [E=HTTP_AUTHORIZATION:...] REST API 인증 헤더 전달

✅ mod_rewrite가 없는 환경에서도 루트 .htaccess는 mod_alias의 RedirectMatch로 data/와 core/를 차단하고, Secure.php가 PHP 레벨에서 보안 헤더를 발행합니다.


1.2 Nginx — nginx.conf.example

PHP 버전별 fastcgi_pass 수정
PHP 버전 fastcgi_pass 경로 예시
PHP 8.1 unix:/run/php/php8.1-fpm.sock
PHP 8.0 unix:/run/php/php8.0-fpm.sock
PHP 7.4 unix:/run/php/php7.4-fpm.sock
TCP 방식 127.0.0.1:9000

서브디렉토리 설치 시 추가 설정
# 예: https://domain.com/cms/ 에 설치한 경우
location /cms/ {
    try_files $uri /cms/index.php?$query_string;
}


1.3 IIS — web.config

URL Rewrite 규칙 우선순위
규칙 이름 매칭 처리
DX Allow uploads ^data/uploads/ None (그대로 서빙, PHP 실행 제외)
DX Block data ^data(/|$) 403 반환
DX Block core ^core(/|$) 403 반환
DX Allow install ^install/ None (설치 PHP 실행 허용)
DX Allow assets ^assets/ None (정적 파일 서빙)
DX Allow theme assets ^themes/[^/]+/assets/ None
DX Allow files 실존 파일 None (그대로 서빙)
DX Route to index 나머지 모든 요청 index.php로 Rewrite


2. 저가형 공유호스팅 설치

2.1 저가형 호스팅 환경 특성

항목 일반적 상황 DXCMS 대응 방식
PHP 버전 PHP 5.6 ~ 7.x 혼재 PHP 5.6부터 완전 지원. ?? 연산자 미사용
mod_rewrite 지원하지 않는 경우 있음 ?_url= 방식으로 자동 폴백
PHP 직접 실행 .htaccess로 제어 AllowOverride가 제한된 환경도 대응
Redis/APCu 미지원 대부분 파일 캐시(data/cache/)로 자동 폴백
cURL 미지원 경우 있음 file_get_contents()로 자동 폴백
OpenSSL 미설치 경우 있음 mt_rand() 기반 난수로 폴백 (보안 강도 낮음)
GD 미지원 경우 있음 썸네일•이미지 처리 기능 비활성화
보안 헤더 .htaccess mod_headers 미지원 Secure.php가 PHP header()로 직접 발행
세션 설정 호스팅 기본값 사용 ini_set()으로 PHP 레벨 강제 설정 시도


2.2 URL Rewrite 없는 환경 설치 확인

mod_rewrite가 없는 환경에서는 아래와 같이 동작을 확인합니다.
# 아래 URL이 정상 동작하면 ?_url= 폴백이 동작 중
https://your-domain.com/index.php?_url=/admin
index.php?_url=/경로 형식이 정상 동작하면 모든 기능이 사용 가능합니다. 단, 브라우저 주소창에 항상 index.php가 표시됩니다.

댓글0

로그인 후 댓글을 작성할 수 있습니다.
3.2 폴더 구조 assets/ — 정적 자원 2026.04.21 3.2 폴더 구조 plugins/ — 플러그인 시스템 2026.04.21 3.2 폴더 구조 themes/ — 테마 시스템 2026.04.21 3.2 폴더 구조 boards/ — 게시판 시스템 2026.04.21 3.2 폴더 구조 admin/ — 관리자 패널 2026.04.21 3.2 폴더 구조 core/ — CMS 엔진 2026.04.21 3.1 엔진 개요 실행 구조 개요 2026.04.21 3.1 엔진 개요 DX 엔진 구조 설명 2026.04.21 2. 시작 가이드 설치 시 보안 경로 구조 2026.04.20 2. 시작 가이드 서버별 설정 파일 상세 2026.04.20 2. 시작 가이드 기본 폴더 구조 설명 2026.04.20 2. 시작 가이드 설치 절차 2026.04.20 2. 시작 가이드 설치 환경 (PHP 버전, 서버 환경) 2026.04.20 비전 DXCMS 비전 2026.04.20 라이선스 DXCMS 오픈소스 및 제3자 소프트웨어 저작권 공지 2026.04.20 라이선스 DXCMS 라이선스 (LGPL 3.0) 2026.04.20 1. DX 철학 / 개념 생태계 확장 전략 2026.04.20 1. DX 철학 / 개념 DXCMS가 지향하는 방향 (플랫폼 vs 단순 CMS) 2026.04.20 1. DX 철학 / 개념 프레임워크 + CMS 통합 구조의 의미 2026.04.20 1. DX 철학 / 개념 기존 CMS와의 구조적 한계 2026.04.20
31
전체 회원
502
전체 게시글
767
전체 댓글
441
오늘 방문
33,173
전체 방문
2
현재 접속
인기글 7일 이내
최신글
최신댓글
목록