Laravel 12에서 URL에서 "public" 제거 방법
카테고리
프로그래밍/소프트웨어 개발
서브카테고리
웹 개발
대상자
Laravel 프레임워크를 사용하는 개발자, 특히 공유 호스팅 환경에서 애플리케이션을 배포하는 경우
핵심 요약
.htaccess
파일을 사용하여 URL에서 "public" 제거RewriteRule ^(.*)$ public/$1 [L]
코드 적용server.php
파일을index.php
로 이름 변경public
폴더의.htaccess
파일을 루트 폴더로 이동public
폴더의 CSS/JS 파일을 루트 폴더로 이동
섹션별 세부 요약
1. `.htaccess` 파일 구성
- Apache 서버의
mod_rewrite
모듈 활성화 필요 - 루트 폴더에
.htaccess
파일 생성 RewriteEngine On
및RewriteRule
설정으로 URL 리디렉션 처리
2. 파일 이름 변경 및 이동
server.php
→index.php
이름 변경public/.htaccess
→ 루트 폴더로 이동public
폴더의 정적 파일(Stylesheet, JS)을 루트 폴더로 이동
3. 호스팅 환경 설정 확인
.htaccess
파일 사용을 위해 Apache 가상 호스트 설정에서.htaccess
활성화 필요- 서버의
mod_rewrite
모듈이 활성화되어 있는지 확인
결론
- Apache 서버의
mod_rewrite
활성화와.htaccess
파일 설정이 URL 재구성의 핵심 - 호스팅 환경에서
public
폴더 제거 시server.php
파일 이름 변경 및 정적 파일 이동이 필수 - 루트 폴더에
.htaccess
파일을 올리고,public
폴더의 파일을 루트로 이동해 URL에서 "public"이 노출되지 않도록 구성하세요.