Laravel 애플리케이션에서 .htaccess를 활용한 'public' 폴더 제거 방법 가이드
🤖 AI 추천
Laravel 개발 환경에서 공유 호스팅 사용 시 URL에 노출되는 'public' 디렉토리를 제거하여 깔끔한 URL 구조를 만들고자 하는 백엔드 개발자 및 웹 개발자에게 유용합니다.
🔖 주요 키워드

핵심 기술
본 콘텐츠는 Laravel 애플리케이션을 공유 호스팅 환경에서 운영할 때 발생하는 URL의 'public' 디렉토리 노출 문제를 해결하기 위해 .htaccess
파일을 활용하는 방법을 안내합니다. Apache 서버의 mod_rewrite
모듈을 사용하여 'public' 폴더를 우회하는 핵심 기술을 다룹니다.
기술적 세부사항
- 목표: Laravel 애플리케이션의 루트 URL에서 'public' 폴더 경로 제거
- 필요 조건: Apache 서버에서
mod_rewrite
모듈 활성화, 가상 호스트 설정에서.htaccess
사용 허용 - 해결 방법:
- Laravel 프로젝트 루트 폴더에
.htaccess
파일을 생성합니다. - 생성된
.htaccess
파일에 다음 내용을 포함시킵니다:
apache RewriteEngine On RewriteRule ^(.*)$ public/$1 [L]
- 프로젝트 루트 폴더의
server.php
파일을index.php
로 이름을 변경합니다. /public
디렉토리에 있는.htaccess
파일을 프로젝트의 루트 폴더로 복사합니다.- (주석 처리된 부분 또는 추가 설명 필요 가능성) 모든 public 폴더의 CSS 및 JS 파일을 루트 폴더로 이동하는 방안도 언급되었으나, 이는 일반적인 해결책은 아니며 잠재적인 문제를 야기할 수 있습니다.
- Laravel 프로젝트 루트 폴더에
개발 임팩트
- URL의 가독성과 전문성을 향상시킵니다.
- 공유 호스팅 환경에서 Laravel 애플리케이션을 더 깔끔하게 배포할 수 있게 합니다.
- 서버 설정 및 파일 구조 변경을 통해 웹 애플리케이션의 기본 접근 방식을 최적화합니다.
커뮤니티 반응
- 언급 없음.
📚 관련 자료
laravel/laravel
Laravel 프레임워크의 공식 저장소로, 프로젝트 구조 및 기본 `.htaccess` 파일 설정을 포함하여 'public' 디렉토리 처리 방식에 대한 근본적인 이해를 제공합니다.
관련도: 95%
apache/httpd
Apache HTTP Server의 소스 코드 저장소입니다. `.htaccess` 작동 방식, `mod_rewrite` 모듈의 구현 등에 대한 심층적인 정보를 탐색하는 데 활용될 수 있으며, 콘텐츠에서 언급된 서버 설정의 기반이 됩니다.
관련도: 80%