Nginx 및 PHP를 사용하여 다중 도메인 이름 해상도와 정적 및 의사 정적 페이지의 공존을 달성하는 방법은 무엇입니까?
Nginx 및 PHP를 사용하여 다중 도메인 이름 해상도 및 정적 및 의사 정적 페이지 공존을 영리하게 구현하십시오.
Nginx 및 PHP의 웹 사이트 아키텍처에서 여러 도메인 이름 해상도는 종종 동시에 처리되어야하며 정적 페이지 및 의사 정적 페이지에 대한 액세스를 지원해야합니다. 이 기사는 Nginx를 구성하는 방법을 소개하여 서로 다른 두 도메인 이름이 동일한 디렉토리를 가리키고 정적 및 의사 정적 액세스 효과를 각각 달성 할 수 있습니다.
www.example.com
과 m.example.com
의 두 가지 도메인 이름이 모두 같은 디렉토리를 가리키고 있다고 가정합니다. 요구 사항은 다음과 같습니다.
-
www.example.com
방문 할 때www.example.com/about.html
과 같은 정적 페이지에 직접 액세스하십시오. -
m.example.com
에 액세스 할 때 의사 정적 효과가 달성됩니다. 예를 들어,m.example.com/about.html
실제로m.example.com/index.php?page=about
에 액세스합니다.
구현 방법 :
www.example.com
의 경우 정적 페이지에 액세스하므로 특수 구성이 필요하지 않으므로 .html
파일이 대상 디렉토리에 존재하는지 확인하십시오.
m.example.com
의 경우 Nginx에 의사 정적 규칙을 추가하고 .html
접미사에 대한 요청을 해당 PHP 파일에 다시 작성해야합니다. 다음은 nginx 구성의 예입니다.
서버 { 80; Server_Name M.Example.com; Root/Path/To/Your/Website; # 귀하의 웹 사이트 루트 디렉토리 위치로/Path/To/귀하의/웹 사이트를 대체합니다. ~* \ .html $ { 다시 작성 ^ /(.*) \. html $ /index.php?page=$1 마지막; } # ... 기타 구성 ... 위치 ~ \ .php $ { 스 니펫 포함/fastcgi-php.conf; fastcgi_pass unix : /run/php/php7.4-fpm.sock; # PHP-FPM 소켓 경로로 교체} }
이 구성에서 location ~* \.html$
모든 .html
-end 요청과 일치하며 rewrite
Recive는 요청을 index.php
에 다시 작성하고 php에 page
매개 변수로 .html
전에 부품을 전달합니다. last
플래그는 Nginx에게 다시 작성 요청을 계속 처리하도록 지시합니다. /path/to/your/website
및 unix:/run/php/php7.4-fpm.sock
실제 경로로 교체하십시오.
위 구성을 통해 동일한 디렉토리를 가리키는 두 도메인 이름을 성공적으로 구현하고 각각 정적 및 의사 정적 페이지에 대한 액세스를 지원합니다. 이 방법이 비슷한 문제를 해결하는 데 도움이되기를 바랍니다.
위 내용은 Nginx 및 PHP를 사용하여 다중 도메인 이름 해상도와 정적 및 의사 정적 페이지의 공존을 달성하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

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

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

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

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

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

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

뜨거운 주제











단계를 따르면 Docker 컨테이너 이름을 쿼리 할 수 있습니다. 모든 컨테이너 (Docker PS)를 나열하십시오. 컨테이너 목록을 필터링합니다 (GREP 명령 사용). 컨테이너 이름 ( "이름"열에 위치)을 가져옵니다.

Windows에서 Nginx를 구성하는 방법은 무엇입니까? nginx를 설치하고 가상 호스트 구성을 만듭니다. 기본 구성 파일을 수정하고 가상 호스트 구성을 포함하십시오. 시작 또는 새로 고침 Nginx. 구성을 테스트하고 웹 사이트를보십시오. SSL을 선택적으로 활성화하고 SSL 인증서를 구성하십시오. 포트 80 및 443 트래픽을 허용하도록 방화벽을 선택적으로 설정하십시오.

nginx가 시작되었는지 확인하는 방법 : 1. 명령 줄을 사용하십시오 : SystemCTL 상태 nginx (linux/unix), netstat -ano | Findstr 80 (Windows); 2. 포트 80이 열려 있는지 확인하십시오. 3. 시스템 로그에서 nginx 시작 메시지를 확인하십시오. 4. Nagios, Zabbix 및 Icinga와 같은 타사 도구를 사용하십시오.

Docker Container Startup 단계 : 컨테이너 이미지를 당기기 : "Docker Pull [Mirror Name]"을 실행하십시오. 컨테이너 생성 : "docker"[옵션] [미러 이름] [명령 및 매개 변수]를 사용하십시오. 컨테이너를 시작하십시오 : "Docker start [컨테이너 이름 또는 ID]"를 실행하십시오. 컨테이너 상태 확인 : 컨테이너가 "Docker PS"로 실행 중인지 확인하십시오.

클라우드 서버에서 nginx 도메인 이름을 구성하는 방법 : 클라우드 서버의 공개 IP 주소를 가리키는 레코드를 만듭니다. Nginx 구성 파일에 가상 호스트 블록을 추가하여 청취 포트, 도메인 이름 및 웹 사이트 루트 디렉토리를 지정합니다. Nginx를 다시 시작하여 변경 사항을 적용하십시오. 도메인 이름 테스트 구성에 액세스하십시오. 기타 참고 : HTTPS를 활성화하려면 SSL 인증서를 설치하고 방화벽에서 포트 80 트래픽을 허용하고 DNS 해상도가 적용되기를 기다립니다.

Docker에서 컨테이너 만들기 : 1. 이미지를 당기기 : Docker Pull [Mirror Name] 2. 컨테이너 만들기 : Docker Run [옵션] [미러 이름] [명령] 3. 컨테이너 시작 : Docker Start [컨테이너 이름]

nginx 버전을 쿼리 할 수있는 메소드는 다음과 같습니다. nginx -v 명령을 사용하십시오. nginx.conf 파일에서 버전 지시문을 봅니다. nginx 오류 페이지를 열고 페이지 제목을 봅니다.

Nginx 서버를 시작하려면 다른 운영 체제에 따라 다른 단계가 필요합니다. Linux/Unix System : Nginx 패키지 설치 (예 : APT-Get 또는 Yum 사용). SystemCTL을 사용하여 nginx 서비스를 시작하십시오 (예 : Sudo SystemCtl start nginx). Windows 시스템 : Windows 바이너리 파일을 다운로드하여 설치합니다. nginx.exe 실행 파일을 사용하여 nginx를 시작하십시오 (예 : nginx.exe -c conf \ nginx.conf). 어떤 운영 체제를 사용하든 서버 IP에 액세스 할 수 있습니다.
