Hostwinds 튜토리얼

에 대한 검색 결과:


목차


.htaccess 파일은 무엇입니까?
.htaccess 파일을 활성화합니다
1 단계 : 가상 호스트 파일을 엽니 다
2 단계 : 'alleroverride all'지시 사항을 추가하십시오
3 단계 : 파일 저장
4 단계 : Apache를 다시 시작합니다
.htaccess 파일 생성
'리디렉션'지시문을 사용하여 단일 URL을 리디렉션합니다
하나의 URL을 동일한 도메인의 다른 URL로 리디렉션하려면 다음과 같습니다.
URL을 다른 도메인의 URL로 리디렉션하려면 :
'rewriterule'지시문을 사용하여 대량 URL 리디렉션
'mod_rewrite가 활성화되어 있는지 확인하십시오
Red Hat 기반 시스템 (Centos, Fedora, Rhel)의 경우 :
데비안 기반 시스템 (Ubuntu, Debian, Linux Mint)의 경우 :
'mod_rewrite'를 활성화하는 방법
Red Hat 기반 시스템 (Centos, Fedora, Rhel)의 경우 :
데비안 기반 시스템 (Ubuntu, Debian, Linux Mint):
공통 패턴을 기반으로 URL을 리디렉션합니다
전체 도메인을 새 도메인으로 리디렉션합니다
'재 작문'지시문으로 HTTPS를 강제로 강제로합니다
모든 트래픽에서 HTTP를 강제로 강제하십시오
특정 도메인에서 HTTP를 강제로합니다
'www'접두사 추가 및 제거

.htaccess 파일을 사용하여 리디렉션을 만드는 방법

.htaccess 파일은 무엇입니까?
.htaccess 파일을 활성화합니다
1 단계 : 가상 호스트 파일을 엽니 다
2 단계 : 'alleroverride all'지시 사항을 추가하십시오
3 단계 : 파일 저장
4 단계 : Apache를 다시 시작합니다
.htaccess 파일 생성
'리디렉션'지시문을 사용하여 단일 URL을 리디렉션합니다
하나의 URL을 동일한 도메인의 다른 URL로 리디렉션하려면 다음과 같습니다.
URL을 다른 도메인의 URL로 리디렉션하려면 :
'rewriterule'지시문을 사용하여 대량 URL 리디렉션
'mod_rewrite가 활성화되어 있는지 확인하십시오
Red Hat 기반 시스템 (Centos, Fedora, Rhel)의 경우 :
데비안 기반 시스템 (Ubuntu, Debian, Linux Mint)의 경우 :
'mod_rewrite'를 활성화하는 방법
Red Hat 기반 시스템 (Centos, Fedora, Rhel)의 경우 :
데비안 기반 시스템 (Ubuntu, Debian, Linux Mint):
공통 패턴을 기반으로 URL을 리디렉션합니다
전체 도메인을 새 도메인으로 리디렉션합니다
'재 작문'지시문으로 HTTPS를 강제로 강제로합니다
모든 트래픽에서 HTTP를 강제로 강제하십시오
특정 도메인에서 HTTP를 강제로합니다
'www'접두사 추가 및 제거

.htaccess 파일은 무엇입니까?

.htaccess 파일은 Apache 웹 서버에서 주로 사용하는 구성 파일입니다.기본 서버 구성 파일을 직접 수정하지 않고 서버 전체 설정을 무시하고 개별 디렉토리에 특정 구성을 적용 할 수 있습니다.

.htaccess 파일은 다양한 백엔드 웹 사이트 작업을 효율적으로 관리하는 데있어 매우 강력한 도구로 두드러집니다.가장 일반적인 작업 중 하나는 리디렉션을 구현하는 것입니다. 개별 URL 수준, 전체 도메인 및 HTTP 프로토콜 수준에서 리디렉션을 실행할 수 있습니다.

이 튜토리얼에서는 무수한 옵션을 살펴볼 것입니다. htaccess 제안을 통해 다양한 구현을 통해 URL을 효과적으로 리디렉션 할 수 있도록 다양한 구현을 안내합니다.

.htaccess 파일을 활성화합니다

.htaccess 파일을 활성화하면 Apache 웹 서버가 그 내에 작성된 지시문을 인식하고 수락하도록 지시하므로 디렉토리 수준에서 기본 서버 구성을 재정의하도록 설정합니다.

당신이있는 경우 공유 호스팅 계정, 호스팅 서비스 제공 업체에는 이미 활성화되어 있어야하므로 파일을 작성하기 만하면됩니다.

1 단계 : 가상 호스트 파일을 엽니 다

선호하는 텍스트 편집기를 사용합니다 (우리는 사용하겠습니다 나노 이 예에서는 다음 명령으로 웹 사이트의 구성 파일을 엽니 다.

Red Hat 기반 시스템 (Centos, Fedora, Rhel)의 경우 :

sudo nano /etc/httpd/conf/httpd.conf

데비안 기반 시스템 (Debian, Ubuntu, Linux Mint)의 경우 :

sudo nano /etc/apache2/sites-available/domain_name.conf

VirtualHost 파일 블록은 다음과 같습니다.

<VirtualHost *:80>
    ServerAdmin webmaster@example.com
    ServerName domain_name
    ServerAlias www.domain_name
    DocumentRoot /var/www/domain_name/public_html
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

노트 : 웹 사이트 파일 구성 방식에 따라 'DocumentRoot' 다를 수 있습니다.두 가지 일반적인 설정이 있습니다.

  • '/var/www/domain_name/public_html' (위)는 귀하의 웹 사이트 파일이 '라는 하위 디렉토리에 있음을 나타냅니다.public_html ' 내 '도메인 이름'디렉토리, 다른 사이트 관련 파일과 공개 파일을 분리하는 데 일반적으로 사용되는 구조입니다.이 디렉토리에서 .htaccess 파일을 활성화하면 'public_html'내의 파일에만 영향을 미칩니다.
  • 예:
/var/www/domain_name/
├── public_html/
│   ├── index.html
│   ├── about.html
│   └── .htaccess
└── logs/
  • '/var/www/domain_name' 모든 웹 사이트 파일이 '직접'에 위치하고 있음을 나타냅니다.도메인 이름'디렉토리.이 설정은 모든 .htaccess 파일 지시문 이이 디렉토리 내의 모든 파일 (공개 또는 비)에 적용됨을 의미합니다.
  • 예:
/var/www/domain_name/
├── index.html
├── about.html
└── .htaccess

둘 다 유효하지만 .htaccess 파일의 영향을 받기를 원하거나 원하지 않는 사이트 파일을 알고 있어야합니다.

2 단계 : 'alleroverride all'지시 사항을 추가하십시오

가상 호스트 블록 다음 디렉토리 컨텐츠 블록 추가 :

<VirtualHost *:80>  

<Directory /var/www/domain_name/public_html>
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
</Directory>

</VirtualHost>

이 지침, 특히 '모든 것을 허용하십시오'주어진 디렉토리 내의 모든 웹 사이트 파일에서 .htaccess 지시문을 적용 할 수있는 것입니다.

3 단계 : 파일 저장

디렉토리 블록을 추가 한 후 파일을 저장하고 닫으십시오.Nano에서는 누르면 눌러 수행 할 수 있습니다 ctrl +x, 다음 와이 그리고 압박 시작하다.

4 단계 : Apache를 다시 시작합니다

.htaccess 파일의 전체 활성화를 위해서는 Apache를 다시 시작해야합니다.

Red Hat 기반 시스템 (Centos, Fedora, Rhel)의 경우 :

sudo systemct1 restart httpd

데비안 기반 시스템 (Debian, Ubuntu, Linux Mint)의 경우 :

sudo systemct1 restart apache2

그게 다야!Apache를 사용하면 주어진 디렉토리 내에서 .htaccess 파일을 사용할 수 있습니다.

.htaccess 파일 생성

.htaccess enabled를 지원하면 이제 .htaccess 파일을 만들 수 있습니다.

.htaccess 파일을 만들려면 루트 디렉토리 .htaccess 파일을 활성화했습니다.선호하는 텍스트 편집기를 사용하여 (다시 Nano를 사용하겠습니다) 입력 다음 명령을 대체합니다.도메인 이름'도메인 이름으로.

노트 : 제거하다 'public_html'해당 하위 디렉토리에서 .htaccess 파일을 활성화하지 않은 경우.

sudo nano /var/www/html/domain_name/public_html/.htaccess

이제 .htaccess 파일을 만들었고 리디렉션 지시문을 배치 할 수 있습니다.

'리디렉션'지시문을 사용하여 단일 URL을 리디렉션합니다

그만큼 '리디렉션'지시문은 간단한 1 대 1 리디렉션을위한 가장 간단한 옵션입니다.이 지침은 동일한 도메인 또는 다른 도메인의 URL을 리디렉션하는 데 사용될 수 있습니다.다음 지침은 모든 3xx 상태 코드 (301, 302, 307 및 308)에 대해 작동합니다.

하나의 URL을 동일한 도메인의 다른 URL로 리디렉션하려면 다음과 같습니다.

Redirect 301 "/original_url_path" "/new_url_path"

URL을 다른 도메인의 URL로 리디렉션하려면 :


Redirect 301 "/orignal_url_path" "https://new_domain.com/new_url_path"

'rewriterule'지시문을 사용하여 대량 URL 리디렉션

NS '재 작성'Directive를 사용하면 정규 표현 및 조건을 사용하여 패턴 매칭과 같은 리디렉션에 추가 규칙을 추가 할 수 있습니다.

'mod_rewrite가 활성화되어 있는지 확인하십시오

'rewriterule'을 사용하려면 'mod_rewrite'모듈이 활성화되어 있는지 확인해야합니다.

Red Hat 기반 시스템 (Centos, Fedora, Rhel)의 경우 :
httpd -M | grep rewrite
데비안 기반 시스템 (Ubuntu, Debian, Linux Mint)의 경우 :
apache2ctl -M | grep rewrite

다음 출력이 표시되면 'mod_rewrite'모듈이 활성화됩니다.

rewrite_module (shared)

'mod_rewrite'를 활성화하는 방법

Red Hat 기반 시스템 (Centos, Fedora, Rhel)의 경우 :

1 단계: Apache 구성 파일 열기 (일반적으로 'httpd.conf'또는 'apache2.conf')

sudo nano /etc/httpd/conf/httpd.conf

2 단계: 다음 줄에 댓글이 표시되지 않도록하십시오 (처음에는 # 없음).그렇다면 단순히 '#'를 삭제하십시오.

LoadModule rewrite_module modules/mod_rewrite.so

3 단계 : Apache를 다시 시작하여 변경 사항을 적용하십시오

sudo systemctl restart httpd
데비안 기반 시스템 (Ubuntu, Debian, Linux Mint):

1 단계: 'mod_rewrite'모듈을 활성화하십시오

sudo a2enmod rewrite

2 단계: Apache를 다시 시작하여 변경 사항을 적용하십시오

sudo systemctl restart apache2

공통 패턴을 기반으로 URL을 리디렉션합니다

동일한 하위 디렉토리 (예 : /블로그)와 같은 이전 URL에 공통 패턴이있는 경우 정규식을 사용하여 일치 및 리디렉션 할 수 있습니다.

RewriteEngine On

RewriteRule ^old-section/(.*)$ http://www.example.com/new-section/$1 [R=301,L]

이 예에서는 모든 URL로 시작합니다 '구식/' 리디렉션됩니다 '신약/' 같은 접미사로.

전체 도메인을 새 도메인으로 리디렉션합니다

다음 지침은 모든 트래픽을 ''모든 트래픽을 리디렉션합니다.old-domain.com' 에게 'new-domain.com, 'URI 경로 보존.

RewriteEngine On

RewriteCond %{HTTP_HOST} ^old-domain\.com$ [NC]
RewriteRule ^(.*)$ http://www.new-domain.com/$1 [R=301,L]

'재 작문'지시문으로 HTTPS를 강제로 강제로합니다

"HTTPS를 강제"할 때 사이트의 들어오는 HTTP 요청을 보안 HTTPS 버전으로 리디렉션합니다.

'rewriterule'지시문을 사용하여 HTTP를 강제하는 몇 가지 방법이 있습니다.

모든 트래픽에서 HTTP를 강제로 강제하십시오

"모든 트래픽"에서 HTTPS를 강제 할 때, 도메인 또는 도메인에 관계없이 모든 들어오는 HTTP 요청을 HTTP에 리디렉션하도록 서버에 알려줍니다. 하위 도메인.

RewriteEngine On

RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

이 강제 HTTPS 방법은 단일 도메인을 호스팅하는 서버에 이상적입니다.

특정 도메인에서 HTTP를 강제로합니다

특정 도메인에서 HTTPS를 강제하면 서버에 해당 도메인 (또는 하위 도메인)에 대해서만 HTTP 요청을 HTTP 요청을 리디렉션하도록 지시합니다.

RewriteEngine On

RewriteCond %{HTTP_HOST} ^(www\.)?specific-domain\.com$ [NC]
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

이 방법을 사용하여 HTTPS를 강제하는 것은 단일 서버에서 여러 도메인을 호스팅 할 때 특히 유용하며 선택 번호 만 보호하면됩니다.

'www'접두사 추가 및 제거

'rewriterule'지시문과 함께 .htaccess 파일을 사용하여 'www'접두사를 리디렉션 할 수도 있습니다.

'www'접두사를 추가하려면 :

RewriteEngine On

RewriteCond %{HTTP_HOST} ^example\.com [NC]
RewriteRule ^(.*)$ https://www.example.com/$1 [L,R=301]

'www'접두사를 제거하려면 :

RewriteEngine On

RewriteCond %{HTTP_HOST} ^www\.example\.com [NC]
RewriteRule ^(.*)$ https://example.com/$1 [L,R=301]

작성자 Hostwinds Team  /  유월 3, 2024