Apache 설정 Http Https 로 다시 설정(두 가지 프로젝트 임 군 선택)
3409 단어 클 라 우 드 서버네트워크 보안apache.https
본 논문 의 실험 환경 은?
ubuntu16 apache2.2
선행 조건 은?
SSL 인증서 가 설정 되 어 있 습 니 다.https 를 사용 하여 사이트 에 접근 하 는 것 이 실현 되 었 습 니 다.(실현 되 지 않 았 다 면 이 블 로 그 를 참고 하 십시오)
실현 절차
실현 은 매우 간단 합 니 다.3 단계 만 있 으 면 됩 니 다.
1.80 포트 의 설정 파일 수정(두 가지 방안 임 군 선택)
파일 경로 설정 /etc/apache2/sites-available
80 포트 의 프로필 이름 은? 000-default.conf
80 포트 수정 내용 은
사이 에 다음 과 같은 내용 을 넣는다)
수정 방법 에 대해 서 는 두 가지 버 전이 있 으 니 버 전 2 를 사용 하 는 것 을 권장 합 니 다.
판본 (www.xxxx.com,xxxx.com 에서 xxx 가 도 메 인 이름 으로 바 뀌 어야 합 니 다) ServerName www.xxxx.com ServerAlias xxxx.com RewriteEngine On RewriteRule ^/(.*?)$ https://www.xxxx.com/$1 [R]
판본 (www.xxxx.com,xxxx.com 에서 xxx 가 도 메 인 이름 으로 바 뀌 어야 합 니 다)
ServerName www.xxxx.com ServerAlias xxxx.com RewriteEngine On RewriteCond %{HTTPS} !=on
RewriteRule ^(.*) https://%{SERVER_NAME}$1 [L,R]
버 전 2 명령 설명
RewriteEngine On 은 rewrite 기능 을 켜 는 거 예요.
RewriteCond %{HTTPS} !=on https 가 아 닐 때 다음 규칙 을 실행 합 니 다.
^(.*) https://%{SERVER_NAME}$1 [L,R] 중. ^ 일치 하 는 줄 의 시작
$1 RewriteRule 의 첫 번 째 정규(.*)가 대표 하 는 문 자 를 참조 합 니 다.%{SERVERNAME}바로 감청 사이트 도 메 인 입 니 다.
[L]:엔 딩 마크.재 작성 작업 을 중단 하고 다른 재 작성 규칙 을 적용 하지 않 습 니 다.본 조항의 규칙 이 후속 규칙 에 영향 을 받 는 것 을 방지 하 다
R 외부 방향 변경 강제
버 전 1 과 버 전 2 의 차이
1.버 전 1 재 설정 규칙 은 모두 하 드 인 코딩 을 사용 하고 결합 성 이 너무 강 하 므 로 버 전 2 를 사용 하 는 것 을 권장 합 니 다.
2.버 전 2 의 리 셋 규칙 의 정규 표현 식 은 버 전 1 보다 결말 표시 가 더욱 전면적 이 고 안전 합 니 다.
3.제 버 전 2 는 다른 저녁 버 전보 다 다른 점 이 있 습 니 다.원래 의 000-default.conf 에는 ServerName 이 없습니다.버 전 을 직접 사용 하면 서 비 스 를 다시 시작 하 는 데 실 패 했 습 니 다.
수정 후 효과
# The ServerName directive sets the request scheme, hostname and port that
# the server uses to identify itself. This is used when creating
# redirection URLs. In the context of virtual hosts, the ServerName
# specifies what hostname must appear in the request's Host: header to
# match this virtual host. For the default virtual host (this file) this
# value is not decisive as it is used as a last resort host regardless.
# However, you must set it for any further virtual host explicitly.
#ServerName www.example.com
#ServerAdmin webmaster@localhost
DocumentRoot /var/www/html/
# Available loglevels: trace8, ..., trace1, debug, info, notice, warn,
# error, crit, alert, emerg.
# It is also possible to configure the loglevel for particular
# modules, e.g.
#LogLevel info ssl:warn
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
# For most configuration files from conf-available/, which are
# enabled or disabled at a global level, it is possible to
# include a line for only one particular virtual host. For example the
# following line enables the CGI configuration for this host only
# after it has been globally disabled with "a2disconf".
#Include conf-available/serve-cgi-bin.conf
#
RewriteEngine on
ServerName www.xxxx.com
ServerAlias xxxx.com
RewriteEngine On
RewriteRule ^/(.*?)$ https://www.xxxx.com/$1 [R]
# vim: syntax=apache ts=4 sw=4 sts=4 sr noet
2.리 셋 모듈 오픈
sudo a2enmod rewrite
3.서비스 재 개
sudo systemctl restart apache2
테스트
테스트 방법 은 간단 합 니 다.http 접근 을 시도 합 니 다.주소 가 https 로 변 하 는 지 주의 하 십시오.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
직몽Dedecms buyaction.php SQL 주입 빈틈 분석이로써 우리는 이 빈틈이 mchStrCode라는 인코딩 방법 때문에 생긴 것이라고 단정할 수 있다.이 함수를 읽을 때 만약 우리가 cfg 를 알았다면cookie_encode의 경우 인코딩된 문자열은 역추적될 수 있습...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.