왜 같은 페이지인데 index.php로 넘어갈까? 웹 주소 구조 완벽 이해하기 :: 꽁지식 주요 소식

ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 왜 같은 페이지인데 index.php로 넘어갈까? 웹 주소 구조 완벽 이해하기
    ▪ 배우는 지식 2025. 11. 11. 11:42
    반응형

     

     

    🧩 주소창엔 안 보이는데? index.php의 숨은 역할

    웹사이트 주소를 입력했을 때, 어떤 사이트는 /index.php로 넘어가고 어떤 곳은 그렇지 않습니다. 겉보기엔 같은 페이지인데 왜 이런 일이 생길까요?

     

    이번 글에서는 index.php가 어떤 역할을 하는지, 그리고 같은 페이지인데도 index.php로 이동하는 이유를 초보자도 쉽게 이해할 수 있도록 정리해드리겠습니다.

     

     



    📖 목차

    🔸index.php란 무엇일까?
    🔸 주소 입력 시 자동으로 열리는 이유
    🔸 같은 페이지인데 왜 index.php로 넘어갈까
    🔸 주소창에 index.php가 보이는 경우
    🔸 index.php를 주소에서 숨기는 방법
    🔸 마무리 정리


     

    1️⃣ index.php란 무엇일까?


    index.php는 웹사이트의 시작점, 즉 방문자가 가장 먼저 보게 되는 기본 페이지를 의미합니다. 서버는 특정 폴더에 접속하면, 자동으로 index.php 나 index.html 같은 파일을 찾아 실행합니다.


    예를 들어, https://example.com/을 입력하면 실제로는 https://example.com/index.php
    파일이 실행되는 구조입니다. 따라서 index.php는 사이트의 첫 화면을 담당하는 기본 진입 파일이라고 볼 수 있습니다.

     

     

    2️⃣ 주소 입력 시 자동으로 열리는 이유


    서버는 폴더를 요청받았을 때 그 안의 기본 파일을 열도록 설정되어 있습니다. 이 기본 파일은 보통 index.php 또는 index.html로 지정되어 있죠.

    즉, 사용자가 /까지만 입력하더라도 서버는 내부적으로 index.php를 자동으로 불러오므로 결국 같은 페이지가 실행됩니다.

    이 동작은 Apache, Nginx, IIS 등 주요 웹 서버가 공통적으로 지원하는 기본 동작입니다.

     

     

    3️⃣ 같은 페이지인데 왜 index.php로 넘어갈까


    주소가 동일한 페이지인데도 index.php가 붙는 이유는 서버 설정 차이 때문입니다.
    어떤 사이트는 다음과 같은 리디렉션(redirect)을 설정해둡니다.
    / → /index.php
    이렇게 해두면 브라우저가 자동으로 index.php로 이동합니다.

    또한 일부 PHP 기반 프레임워크(CodeIgniter, 구형 Laravel 등)는 모든 요청을 index.php를 통해 처리하도록 만들어졌습니다. 이 경우 index.php는 단순한 첫 화면이 아니라, 사이트 전체를 연결하는 중앙 라우터(router) 역할을 수행합니다.

    즉, 겉보기엔 같은 페이지처럼 보여도 내부적으로는 index.php가 모든 요청을 받아 페이지를 분기시키는 구조인 것입니다.

     

     

    4️⃣ 주소창에 index.php가 보이는 경우


    주소창에 index.php가 표시되는 경우는 크게 세 가지입니다.
    🔸리디렉션 설정으로 명시적으로 이동할 때 → 서버가 / 요청을 index.php로 자동 전환하도록 설정된 경우입니다.

    🔸 URL 재작성(Rewrite) 기능이 비활성화된 경우 → .htaccess나 nginx.conf 설정에서 URL 재작성이 설정되지 않았다면, 내부 경로가 그대로 노출됩니다.

    🔸 프레임워크 구조상 반드시 거쳐야 하는 경우 → 라우터가 index.php를 통해서만 요청을 처리하도록 설계된 경우입니다.

     

     

    5️⃣ index.php를 주소에서 숨기는 방법


    만약 깔끔한 주소를 원한다면, URL 재작성(URL Rewrite) 기능을 활용하면 됩니다.

     

    예를 들어 Apache 서버에서는 .htaccess 파일에 아래 내용을 추가합니다.
    RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ index.php?$1 [L,QSA]

    이 설정을 하면, 사용자가 https://example.com/about을 입력했을 때 실제로는 https://example.com/index.php/about을 불러오지만 주소창에는 index.php가 보이지 않습니다.

    이 기능 덕분에 검색엔진 최적화(SEO)에도 도움이 됩니다. URL이 깔끔하고 짧을수록 검색 로봇이 페이지 구조를 명확히 인식하기 때문입니다.

     

     

    6️⃣ 마무리 정리


    index.php는 사이트의 기본 진입 파일이며, 폴더에 접속하면 자동으로 실행됩니다.
    같은 페이지인데 index.php로 넘어가는 이유는 서버 설정이나 프레임워크 구조 때문입니다.
    .htaccess 같은 설정을 통해 주소창에서 index.php를 숨길 수 있으며, 이렇게 하면 사이트 주소가 더 깔끔해지고 SEO에도 유리합니다.

     

     

    💡 핵심 정리


    🔸 index.php는 웹사이트의 첫 실행 파일이다.
    🔸 서버는 /로 요청받아도 내부적으로 index.php를 불러온다.
    🔸 URL 재작성 설정을 통해 index.php를 숨길 수 있다.

    이제 “같은 페이지인데 왜 index.php로 넘어가는지” 헷갈리지 않으시겠죠? 웹의 기본 구조를 이해하면, URL 관리나 SEO 설정에서도 훨씬 유리해집니다.

     

     

    반응형

    댓글

Designed by Tistory.
카카오톡 공유