리눅스 .htaccess: Difference between revisions

From CS Wiki
(새 문서: 분류:리눅스분류:리눅스 파일 아파치 웹서버에서 디렉터리 별로 웹서버 설정을 다르게 설정할 수 있도록 설정 값을 적용하는 파일...)
 
No edit summary
Line 16: Line 16:
</Directory>
</Directory>
</pre>
</pre>
== 활용 ==
rewrite 규칙을 적용하는 등 많은 설정 값을 오버라이드할 수 있다.
* ex) http를 https로 변경하고 www를 삭제하는 rewrite rule 적용
<pre>
RewriteEngine On
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} ^www\. [NC]
RewriteCond %{HTTP_HOST} ^(?:www\.)?(.+)$ [NC]
RewriteRule ^ https://%1%{REQUEST_URI} [L,NE,R=301]
</pre>


== 이름 변경 ==
== 이름 변경 ==

Revision as of 02:24, 7 February 2021

아파치 웹서버에서 디렉터리 별로 웹서버 설정을 다르게 설정할 수 있도록 설정 값을 적용하는 파일

활성화

아파치 설정(httpd.conf 등)에서 AllowOverride를 허용해줘야 한다.

  • 예를 들어 home/*/public_html 하위 디렉터리에서 모든 재설정을 허용해주고 싶다면 아래와 같은 구문 추가
<Directory "/home/*/public_html">
    AllowOverride all
</Directory>
  • 보안 등을 위해 최소한의 재설정만 가능하도록 제한해 주는 것을 권장
<Directory "/home/*/public_html">
    AllowOverride FileInfo AuthConfig Limit Indexes
</Directory>

활용

rewrite 규칙을 적용하는 등 많은 설정 값을 오버라이드할 수 있다.

  • ex) http를 https로 변경하고 www를 삭제하는 rewrite rule 적용
RewriteEngine On
RewriteCond %{HTTPS} off [OR]
RewriteCond %{HTTP_HOST} ^www\. [NC]
RewriteCond %{HTTP_HOST} ^(?:www\.)?(.+)$ [NC]
RewriteRule ^ https://%1%{REQUEST_URI} [L,NE,R=301]


이름 변경

아파치 설정(httpd.conf 등)에 AccessFileName 옵션을 통해 원하는 파일명으로 변경 가능

  • 예를 들어 .htaccess가 아닌 .config로 변경하고 싶다면 아래와 같은 구문 추가
AccessFileName .config