운영 및 유지보수 엔진스 nginx, apache의 별칭, 인증 기능 분석 예시

nginx, apache의 별칭, 인증 기능 분석 예시

May 24, 2023 pm 11:10 PM
apache nginx alias

먼저 Apache 별칭을 구성하는 방법을 살펴보겠습니다.

코드 복사 코드는 다음과 같습니다.


documentroot /www/jb51.net/www 이것이 루트입니다. 가상 호스트의 디렉토리인데 phpmyadmin 이 디렉토리에 없어서 액세스하고 싶습니다.
servername www.jb51.net
serveralias jb51.net
alias /sdb "/www/public/phpmyadmin/"에는 별칭 기능이 필요합니다: //www.jb51.net/sdb 이것이 훨씬 더 안전합니다.

options indexes followymlinks
allowoverride none
order 허용,deny
allow from all

一.apache 인증

인증 유형: 기본
다이제스트 요약
인증 방법: a.컨테이너 인증: ……
b.숨겨진 파일 인증 .htaccess 파일 생성
방법 1. 컨테이너 인증
a. conf/httpd.conf
b, 구성: 531행 주변의 구성은 다음과 같습니다.

allowoverride none ## 숨겨진 인증은 허용되지 않습니다. 즉, 컨테이너 인증
authtype basic ## 인증 유형은 basic
authname "ajian " ## 인증명은 ajian
authuserfile /var/www/passwd/pass ##pass 는 인증 비밀번호 파일로, 비밀번호 파일이 저장되는 위치를 지정합니다.
require valid-user ## 유효한 사용자(경우에 따라 일부 변경 사항이 있음)
c. mkdir -p /var/www/passwd 디렉토리를 생성합니다. cd /var/www/passwd
d 디렉토리를 입력합니다. create apache user htpasswd -c pass ajian ##pass는 비밀번호 파일 ajian은 사용자
패스 파일의 사용 권한을 apache로 변경: chown apache.apache pass
첨부: 패스 파일에 사용자 추가: htpasswd pass tt # #pass 파일에 tt 사용자 추가
e, 서비스 재시작 및 테스트
방법 2, 숨겨진 인증 통과
위와 거의 동일하지만 구성이 다릅니다
httpd 기본 구성 파일

allowoverride authconfig
생성 숨겨진 파일을 복사하여 인증된 디렉터리를 통과하도록 넣습니다
예: vi /var/www/html/mrtg
authtype basic
authname “ajian”
authuserfile /var/www/passwd/pass
require valid-user

다음은 example

nginx, apache의 별칭, 인증 기능 분석 예시

nginx, apache의 별칭, 인증 기능 분석 예시

nginx, apache의 별칭, 인증 기능 분석 예시

2. nginx 로그인 인증
nginx의 http 인증 기본 비밀번호는 crypt(3)으로 암호화됩니다. Apache의 htpasswd를 사용하여 비밀번호 파일을 생성하십시오.
아파치 설치가 필요하지 않습니다. Apache2, /usr/local/apach2를 설치했습니다.
cd /usr/local/nginx/conf /usr/local/apache2/bin/htpasswd -c -d pass_file user_name # Enter를 눌러 비밀번호를 입력하세요. -c는 파일 생성을 의미하고, -d는 crypt로 암호화합니다.
vi nginx.conf cd /usr/local/nginx/conf /usr/local/apache2/bin/htpasswd -c -d pass_file user_name # Enter를 눌러 비밀번호를 입력하고, -c는 파일 생성을 의미하며 -d는 crypt로 암호화합니다. vi nginx.conf nginx.conf 파일에 인증 명령문을 추가합니다. 여기서 주의할 점은 nginx 0.6.7부터 auth_basic_user_file의 상대 디렉터리는 nginx_home/conf이고 이전 버전의 상대 디렉터리는 nginx_home입니다.


코드 복사 코드는 다음과 같습니다.

server {
listen 80;
server_name tuan.xywy.com;
root /www/tuangou;
index index.html index.htm index.php;
autoindex on;
auth_basic "사용자 이름과 비밀번호를 입력하세요";
auth_basic_user_file htpasswd.file;
location ~ .php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param script_filename /www/tuangou$fastcgi_script_name;
include fastcgi _params ;
}
error_page 404 /404.php;
error_page 403 /404.php;

access_log /logs/tuan_access.log main;
}


별도의 위치에 있는 디렉터리 인증 , 그리고 이 위치에 php를 설명하는 위치를 중첩합니다. 그렇지 않으면 php 파일이 실행되지 않고 다운로드됩니다. auth_basic은 중첩된 위치 뒤에 옵니다.

코드 복사 코드는 다음과 같습니다.

server {
listen 80;
server_name tuan.xywy.com;
root /www/tuangou;
index index.html index.htm index.php;
autoindex on ;
위치 ~ ^/admin/.* {
위치 ~ .php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param script_filename /www/tuangou$fastcgi_script_name;
include fastcgi_params;
}
root /www/ tuangou/ ;
auth_basic "auth";
auth_basic_user_file htpasswd.file;
}

location ~ .php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fastcgi_params;
}

access_log /logs /tuan_access.log main;
}



Three.nginx 별칭 함수 구성은 자동으로 디렉터리를 나열합니다

코드 복사 코드는 다음과 같습니다.


server {

listen www.jb51.net:88;

server_name www.jb51.net;

autoindex on; //디렉토리 목록 기능을 활성화합니다.

# charset gbk;
location /club {방문 이름 //www.jb51.net:88/club
alias /www/clublog/club.xywy.com/ 서버에 로그가 저장되는 곳입니다
} 이 Duan Yi는 www.jb51.net:88/club을 방문하여 클럽 디렉토리의 내용을 보았습니다.
위치 /{
root /www/access;
이 위치는 www.jb51.net:88일 필요는 없습니다. 나오는 것은 기본 nxing 페이지입니다
# index index.html index.htm index.php;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}



위의 nginx 구성은 다음을 의미합니다. http://hou.xywy.com/을 방문하세요. 88 인증 입력 기본적으로 서버의 /www/access/에 있는 디렉터리에 액세스됩니다. 인증 후 url=http://hou.xywy.com:88/club은 /www/에 있는 디렉터리의 내용을 표시합니다. 클럽로그/club.xywy.com/. , 혼란스러울 수 있으니 주의 깊게 분석해 보세요.

루트와 별칭의 차이점.
가장 기본적인 차이점: 별칭으로 지정된 디렉터리는 정확하고, 루트는 지정된 디렉터리의 상위 디렉터리이며, 상위 디렉터리는 위치로 지정된 이름과 동일한 이름의 디렉터리를 포함해야 합니다. 또한 위에서 언급한 것처럼 alias 태그를 사용하는 디렉터리 블록에서는 rewrite's break를 사용할 수 없습니다.

이 단락을 보면 매우 명확해질 것입니다.

코드 복사 코드는 다음과 같습니다:


location /abc/ {
alias /home/html/abc/;
}


이 구성에서 http://test/abc/a.html은 /home/html/abc/a.html을 지정합니다. 이 구성은 다음과 같이 변경할 수도 있습니다.

코드 복사 코드는 다음과 같습니다.


location /abc/ {
root /home/html/;
}


이러한 방식으로 nginx는 /home을 찾습니다. /html/ 디렉토리 abc 디렉토리 아래에서 얻은 결과는 동일합니다.

그러나 별칭 구성을 다음과 같이 변경하면

코드를 복사합니다. 코드는 다음과 같습니다.


location /abc/ {
alias /home/html/def/;
}


그런 다음 nginx는 Fetch data from /home/html/def/에서 시작됩니다. 이 구성은 루트를 사용하여 직접 구성할 수 없습니다. 구성해야 하는 경우 /home/html 아래에 def->abc의 소프트 링크(바로가기)만 만들 수 있습니다. /.

일반적으로 위치 /에 루트를 구성하고 위치 /기타에 별칭을 구성하는 것이 좋은 습관입니다.

위 내용은 nginx, apache의 별칭, 인증 기능 분석 예시의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

Java 동시 프로그래밍에서 동시성 테스트 및 디버깅을 수행하는 방법은 무엇입니까? Java 동시 프로그래밍에서 동시성 테스트 및 디버깅을 수행하는 방법은 무엇입니까? May 09, 2024 am 09:33 AM

동시성 테스트 및 디버깅 Java 동시 프로그래밍의 동시성 테스트 및 디버깅은 매우 중요하며 다음 기술을 사용할 수 있습니다. 동시성 테스트: 단위 테스트: 단일 동시 작업을 격리하고 테스트합니다. 통합 테스트: 여러 동시 작업 간의 상호 작용을 테스트합니다. 부하 테스트: 부하가 심한 상황에서 애플리케이션의 성능과 확장성을 평가합니다. 동시성 디버깅: 중단점: 스레드 실행을 일시 중지하고 변수를 검사하거나 코드를 실행합니다. 로깅: 스레드 이벤트 및 상태를 기록합니다. 스택 추적: 예외의 원인을 식별합니다. 시각화 도구: 스레드 활동 및 리소스 사용량을 모니터링합니다.

Eclipse에서 서버를 추가하는 방법 Eclipse에서 서버를 추가하는 방법 May 05, 2024 pm 07:27 PM

Eclipse에 서버를 추가하려면 다음 단계를 수행하십시오. 서버 런타임 환경 생성 서버 구성 서버 인스턴스 생성 서버 런타임 환경 선택 서버 인스턴스 구성 서버 배포 프로젝트 시작

58 초상화 플랫폼 구축에 알고리즘 적용 58 초상화 플랫폼 구축에 알고리즘 적용 May 09, 2024 am 09:01 AM

1. 58초상화 플랫폼 구축 배경 먼저, 58초상화 플랫폼 구축 배경에 대해 말씀드리겠습니다. 1. 기존 프로파일링 플랫폼의 전통적인 사고로는 더 이상 충분하지 않습니다. 사용자 프로파일링 플랫폼을 구축하려면 여러 비즈니스 라인의 데이터를 통합하여 정확한 사용자 초상화를 구축하는 데이터 웨어하우스 모델링 기능이 필요합니다. 그리고 알고리즘 측면의 기능을 제공해야 하며, 마지막으로 사용자 프로필 데이터를 효율적으로 저장, 쿼리 및 공유하고 프로필 서비스를 제공할 수 있는 데이터 플랫폼 기능도 있어야 합니다. 자체 구축한 비즈니스 프로파일링 플랫폼과 중간 사무실 프로파일링 플랫폼의 주요 차이점은 자체 구축한 프로파일링 플랫폼이 단일 비즈니스 라인에 서비스를 제공하고 필요에 따라 사용자 정의할 수 있다는 것입니다. 모델링하고 보다 일반적인 기능을 제공합니다. 2.58 Zhongtai 초상화 구성 배경의 사용자 초상화

PHP 보안 모범 사례를 구현하는 방법 PHP 보안 모범 사례를 구현하는 방법 May 05, 2024 am 10:51 AM

PHP 보안 모범 사례를 구현하는 방법 PHP는 동적 및 대화형 웹 사이트를 만드는 데 사용되는 가장 인기 있는 백엔드 웹 프로그래밍 언어 중 하나입니다. 그러나 PHP 코드는 다양한 보안 취약점에 취약할 수 있습니다. 이러한 위협으로부터 웹 애플리케이션을 보호하려면 보안 모범 사례를 구현하는 것이 중요합니다. 입력 유효성 검사 입력 유효성 검사는 사용자 입력의 유효성을 검사하고 SQL 삽입과 같은 악의적인 입력을 방지하는 중요한 첫 번째 단계입니다. PHP는 filter_var() 및 preg_match()와 같은 다양한 입력 유효성 검사 함수를 제공합니다. 예: $username=filter_var($_POST['사용자 이름'],FILTER_SANIT

Kubernetes Operator를 활용하여 PHP 클라우드 배포를 단순화하는 방법은 무엇입니까? Kubernetes Operator를 활용하여 PHP 클라우드 배포를 단순화하는 방법은 무엇입니까? May 06, 2024 pm 04:51 PM

KubernetesOperator는 다음 단계에 따라 PHP 클라우드 배포를 단순화합니다. Kubernetes 클러스터와 상호 작용하려면 PHPOperator를 설치합니다. PHP 애플리케이션을 배포하고 이미지와 포트를 선언합니다. 로그 가져오기, 설명, 보기 등의 명령을 사용하여 애플리케이션을 관리합니다.

Java 네트워크 프로그래밍에서 일반적으로 사용되는 프로토콜과 라이브러리는 무엇입니까? Java 네트워크 프로그래밍에서 일반적으로 사용되는 프로토콜과 라이브러리는 무엇입니까? May 09, 2024 pm 06:21 PM

Java 네트워크 프로그래밍에 일반적으로 사용되는 프로토콜 및 라이브러리: 프로토콜: TCP, UDP, HTTP, HTTPS, FTP 라이브러리: java.net, java.nio, ApacheHttpClient, Netty, OkHttp

한 번만 기록하고 strace를 사용하여 PHP가 너무 많은 시스템 리소스를 차지하는 문제를 진단하세요. 한 번만 기록하고 strace를 사용하여 PHP가 너무 많은 시스템 리소스를 차지하는 문제를 진단하세요. May 03, 2024 pm 04:31 PM

로컬 환경: redhat6.7 시스템. nginx1.12.1, php7.1.0, 코드는 yii2 프레임워크 문제를 사용합니다. 로컬 웹 사이트는 elasticsearch 서비스를 사용해야 합니다. PHP가 로컬 서버에 구축된 Elasticsearch를 사용하는 경우 로컬 로드는 정상입니다. AWS의 Elasticsearch 서비스를 사용할 때 로컬 서버의 부하가 너무 높은 경우가 많습니다. nginx 및 php 로그를 확인하고 예외가 없는지 확인하세요. 시스템의 동시 연결 수도 높지 않습니다. 이때 우리 상사가 알려준 추적 진단 도구가 생각났다. 디버깅 프로세스: PHP 하위 프로세스 idstrace- 찾기

Java 데이터 구조 및 알고리즘: 클라우드 컴퓨팅에 대한 실용 가이드 Java 데이터 구조 및 알고리즘: 클라우드 컴퓨팅에 대한 실용 가이드 May 09, 2024 am 08:12 AM

클라우드 컴퓨팅에서는 방대한 양의 데이터를 관리하고 처리하기 위해 데이터 구조와 알고리즘을 사용하는 것이 중요합니다. 일반적인 데이터 구조에는 배열, 목록, 해시 테이블, 트리 및 그래프가 포함됩니다. 일반적으로 사용되는 알고리즘에는 정렬 알고리즘, 검색 알고리즘 및 그래프 알고리즘이 포함됩니다. 개발자는 Java의 강력한 기능을 활용하여 Java 컬렉션, 스레드로부터 안전한 데이터 구조 및 Apache Commons 컬렉션을 사용하여 이러한 데이터 구조와 알고리즘을 구현할 수 있습니다.

See all articles