[WP] 워드프레스 htaccess 기본 설정 및 WWW URL 제거 방법

워드프레스로 사이트를 운영하는 중에 .htaccess 파일 기본 설정이 필요할 때가 있습니다. 워드프레스 htaccess 기본 설정은 일반 사이트와 멀티 사이트 용으로 나뉩니다. FTP 또는 SSH 등으로 .htaccess 파일이 없는 경우 확인이 되면 아래 내용을 참조해서 생성하면 되겠습니다.

✅ 워드프레스 htaccess 기본 설정: 일반 사이트

워드프레스 .htaccess 기본 설정(일반 사이트)은 다음과 같습니다.

# BEGIN WordPress
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# END WordPress

✅ .htaccess 기본 설정: 멀티 사이트

🔲 하위 폴더 설정

# BEGIN WordPress Multisite
# Using subfolder network type: https://wordpress.org/documentation/article/htaccess/#multisite

RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ - [L]

# add a trailing slash to /wp-admin
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]

RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) $2 [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ $2 [L]
RewriteRule . index.php [L]

# END WordPress Multisite

🔲 하위 도메인 설정

# BEGIN WordPress Multisite
# Using subdomain network type: https://wordpress.org/documentation/article/htaccess/#multisite

RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ - [L]

# add a trailing slash to /wp-admin
RewriteRule ^wp-admin$ wp-admin/ [R=301,L]

RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule ^(wp-(content|admin|includes).*) $1 [L]
RewriteRule ^(.*\.php)$ $1 [L]
RewriteRule . index.php [L]

# END WordPress Multisite

✅ 워드프레스 WWW URL 제거: NON-WWW로 리디렉션

웹사이트의 SEO를 위해 또는 트랜드에 따르면 웹 사이트의 서브 도메인인 www는 점점 사용하는 추세가 줄어들고 있습니다. 크롬 앱에서도 www가 있는 사이트로 접속하더라도 마우스를 클릭해서 확인하기 전에는 www를 제거한 상태인 것이 그 반증이라 할 수 있겠습니다.

워드프레스에서 www URL 제거 방법은 크게 두 가지가 있습니다.(apache 기준) .htaccess 설정과 virtual host 파일을 수정하는 방법입니다.

🔲 .htaccess 설정

# BEGIN WordPress
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# HTTP와 www를 포함한 요청을 HTTPS(NON-WWW)로 리디렉션
RewriteCond %{HTTPS} off [OR]
    RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
    RewriteRule ^(.*)$ https://mydomain.com$1 [R=301,L]
# END WordPress

🔲 virtual host 파일 설정

<VirtualHost *:80>
    ServerName mydomain.com
    ServerAlias *.mydomain.com
# HTTP와 www를 포함한 요청을 HTTPS(NON-WWW)로 리디렉션
    RewriteEngine On
    RewriteCond %{HTTPS} off [OR]
    RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
    RewriteRule ^(.*)$ https://mydomain.com$1 [R=301,L]
</VirtualHost>
<IfModule mod_rewrite.c>
  RewriteEngine On
 </IfModule>

위 두 가지 설정이 되려면 개인 서버에서는 http.conf 파일 등에 RewriteEngine 설정이 전역 설정으로 되어 있어야 합니다. 직접 운영하는 서버가 아닌 경우 .htaccess 파일에서 설정을 하게 되는데 설정 후에도 적용이 되지 않는다면 사용 중인 호스팅 업체에 문의하면 되겠습니다.

워드프레스 작업

Similar Posts

  • What CMS? 어떤 CMS를 사용하는지 확인 사이트 목록 3군데

    WordPress, Shopify , 윅스, Squarespace, 줌라 등의 CMS 점유율을 확인한다면 w3techs 사이트에서 CMS 점유율을 확인할 수 있습니다. What CMS..? 어떤 CMS를 사용하는지 궁금할 경우 조회할 수 있는 사이트 중 대표적인 사이트입니다. 목차✅ 워드프레스 htaccess 기본 설정: 일반 사이트✅ .htaccess 기본 설정: 멀티 사이트🔲 하위 폴더 설정🔲 하위 도메인 설정✅ 워드프레스 WWW URL 제거: NON-WWW로 리디렉션🔲 .htaccess 설정🔲 virtual…

  • [WP] 워드프레스 미디어 개요 및 5가지 주요 기능

    워드프레스 미디어 라이브러리는 이미지(JPEG, PNG 등), 비디오, 오디오 및 문서(PDF,Word 등 파일로 구성되며 한 곳에서 관리할 수 있습니다. 미디어 라이브러리에서 미디어 업로드와 필요하지 않은 관련 파일의 삭제 및 편집을 할 수 있습니다. 목차✅ 워드프레스 htaccess 기본 설정: 일반 사이트✅ .htaccess 기본 설정: 멀티 사이트🔲 하위 폴더 설정🔲 하위 도메인 설정✅ 워드프레스 WWW URL…

  • 웹 사이트 속도 측정 TOP4 (GTmetrix WebPagetest..)

    워드프레스 CMS를 포함한 웹 사이트의 속도는 매우 중요합니다. 페이지의 느린 로딩 속도로 방문자는 웹 사이트의 콘텐츠를 보기 전에 이탈한 가능성이 있습니다. 웹 사이트 속도 측정 도구를 이용해 운영 중인 웹 사이트의 속도가 어느 정도 나오는지 체크할 수 있는 도구들입니다. 목차✅ 워드프레스 htaccess 기본 설정: 일반 사이트✅ .htaccess 기본 설정: 멀티 사이트🔲 하위 폴더…

  • 워드프레스 “There has been a critical error on your website” 오류 원인과 해결 과정

    워드프레스 관리자 페이지에서 작업 중 다른 페이지는 문제가 없었으나 [업데이트] 페이지를 접속하면 “there has been a critical error on your website. please check your site admin email inbox for instructions.” 오류 메시지가 확인 되었습니다. 워드프레스 “웹사이트에 치명적인 오류가 있습니다.”와 같은 문제 발생 시 빠른 해결 방법은 바로 원인 파악을 하는겁니다. 목차✅ 워드프레스 htaccess…

  • 워드프레스 DB Collation: utf8mb4_unicode_520_ci

    워드프레스 전용 서버를 구축하기 위한 준비를 APM 설치 후 테스트 도메인으로 워드프레스를 설치했다. 설치 후 데이터베이스를 확인해 보니 워드프레스 DB Collation이 utf8mb4_general_ci가 아닌 utf8mb4_unicode_520_ci로 확인되었다. 워드프레스 utf8mb4_unicode_520_ci가 표준이었나 생각하다가 구글링 후 워드프레스 utf8mb4_unicode_520_ci가 표준이라는 것을 확인했다. 예전에 시간적 여유가 있을 때 utf8mb4_general_ci를 사용했었고 그때는 utf8mb4_general_ci가 표준이었는지 모르겠지만 지금 생각해보니 예전에도 표준 정렬은 unicode_ci를…

  • 워드프레스 테마: 용도와 기능으로 보는 테마 선택 기준

    웹사이트를 구축하기 위해 원하는 서비스에 맞는 호스팅 서버까지 구매한 후에 워드프레스를 설치했습니다. 기본 테마로 내 웹사이트를 꾸미는 경우는 거의 없습니다. 워드프레스 테마는 웹사이트의 외형과 기능을 결정하는 핵심 요소입니다. 사이트 운영 목적에 따라 테마 선택 기준도 달라집니다. 예를 들어, 블로그, 포트폴리오, 쇼핑몰 등 목적에 맞는 적절한 레이아웃과 기능이 필요합니다. 테마는 단순한 디자인뿐만 아니라 페이지…

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

Prove your humanity: 8   +   3   =