Nginx(엔진 x와 동일하게 발음)는 경량 웹 서버/역방향 프록시 서버 및 이메일(IMAP/POP3) 프록시 서버이며 BSD와 유사한 프로토콜로 출시됩니다. Nginx의 특징은 메모리를 덜 차지하고 강력한 동시성 기능을 가지고 있다는 것입니다. 실제로 nginx의 동시성 기능은 동일한 유형의 웹 서버에서 더 나은 성능을 발휘합니다. Apache httpd와 마찬가지로 Nginx는 가상 호스트를 구성하기 위한 IP 기반, 포트 기반 및 도메인 이름 기반 방법도 제공합니다.
1. 가상 호스트란 무엇인가요?
가상 호스트는 특수한 소프트웨어 및 하드웨어 기술을 사용하여 실제 물리적 서버 호스트를 여러 개의 논리적 저장 장치로 나눕니다. 각 논리 장치에는 물리적 개체가 없지만 각 논리 장치는 별도의 IP 주소(또는 공유 IP 주소), 독립적인 도메인 이름 및 완전한 인터넷 서버(WWW, FTP 지원)를 사용하여 실제 물리적 호스트처럼 네트워크에서 작동할 수 있습니다. , 이메일 등) 기능을 제공합니다.
가상 호스팅의 핵심 기술은 여러 사용자를 위해 오픈된 서로 다른 서버 프로그램이 동일한 하드웨어, 동일한 운영 체제에서 실행되더라도 서로 간섭하지 않는다는 것입니다. 각 사용자는 자신만의 시스템 리소스 부분(IP 주소, 문서 저장 공간, 메모리, CPU 등)을 갖습니다. 각 가상 호스트는 서로 완전히 독립적입니다. 외부 세계에서는 각 가상 호스트가 별도의 호스트와 동일하게 작동합니다. 따라서 이 가상화된 논리 호스트를 "가상 호스트"라고 칭합니다.
2. 포트 기반 가상 호스트
<code>1、准备环境 #当前环境 # more /etc/issue Red Hat Enterprise Linux Server release 6.3 (Santiago) Kernel \r on an \m # uname -rm 2.6.32-279.el6.x86_64 x86_64 # nginx -v nginx version: nginx/1.8.0 # 创建3个目录用于存放不同形式虚拟主机index.html文件 # mkdir -p /website/baseport # mkdir -p /website/baseip # mkdir -p /website/basedomain # vi /website/baseport/index.html <span><!DOCTYPE html></span><span><<span>html</span>></span><span><<span>head</span>></span><span><<span>title</span>></span>Base port sample<span></<span>title</span>></span><span></<span>head</span>></span><span><<span>body</span>></span><span><<span>h1</span>></span>This is an based port website sample(prot:8080).<span></<span>h1</span>></span><span></<span>body</span>></span><span></<span>html</span>></span>2、配置nginx.conf #第一个虚拟主机 server { listen 80; server_name localhost; location / { root html; index index.html index.htm; } #第二个虚拟主机 server { listen 8080; server_name localhost; location / { root /website/port; index index.html index.htm; } } 3、验证 # nginx -t #语法检查 # service nginx reload #服务重载 # curl http://192.168.1.120:8080 #验证基于端口访问 <span><!DOCTYPE html></span><span><<span>html</span>></span><span><<span>head</span>></span><span><<span>title</span>></span>Base port sample<span></<span>title</span>></span><span></<span>head</span>></span><span><<span>body</span>></span><span><<span>h1</span>></span>This is an based port website sample(prot:8080).<span></<span>h1</span>></span><span></<span>body</span>></span><span></<span>html</span>></span></code>
3. IP 기반 가상 호스트
<code>1、先添加IP # ifconfig|grep "inet addr" inet addr:192.168.1.120 Bcast:192.168.1.255 Mask:255.255.255.0 inet addr:127.0.0.1 Mask:255.0.0.0 # ifconfig eth0:0 192.168.1.220 netmask 255.255.255.0 up #添加IP到eth0:0 # ifconfig|grep "inet addr" inet addr:192.168.1.120 Bcast:192.168.1.255 Mask:255.255.255.0 inet addr:192.168.1.220 Bcast:192.168.1.255 Mask:255.255.255.0 inet addr:127.0.0.1 Mask:255.0.0.0 2、配置nginx.conf #第一个虚拟主机 server { listen 80; server_name localhost; location / { root html; index index.html index.htm; #第二个虚拟主机 server { listen 192.168.1.220:80; server_name localhost; location / { root /website/baseip; index index.html index.htm; } } 3、验证 # nginx -t #语法检查 Author:Leshami # service nginx reload #服务重载 Blog :http://blog.csdn.net/leshami # curl http://192.168.1.220 #验证基于IP访问 <span><!DOCTYPE html></span><span><<span>html</span>></span><span><<span>head</span>></span><span><<span>title</span>></span>Base ip sample<span></<span>title</span>></span><span></<span>head</span>></span><span><<span>body</span>></span><span><<span>h1</span>></span>This is an based ip website sample.<span></<span>h1</span>></span><span></<span>body</span>></span><span></<span>html</span>></span></code>
4. 🎜 >
<code>1、修改/etc/hosts文件 # echo " 192.168.1.120 bbs.ycdata.net bbs 192.168.1.120 mail.ycdata.net mail > ">>/etc/hosts 2、配置nginx.conf #第一个虚拟主机 server { listen 80; server_name mail.ycdata.net; location / { root html; index index.html index.htm; } #第二个虚拟主机 server { listen 80; server_name bbs.ycdata.net; location / { root /website/baseport; index index.html index.htm; } } 3、验证 # curl http://mail.ycdata.net <span><!DOCTYPE html></span><span><<span>html</span>></span><span><<span>head</span>></span><span><<span>title</span>></span>Welcome to nginx!<span></<span>title</span>></span><span><<span>style</span>></span><span><span>body</span><span>{ <span><span>width</span>:<span><span>35</span>em</span></span>; <span><span>margin</span>:<span><span>0</span> auto</span></span>; <span><span>font-family</span>:<span> Tahoma, Verdana, Arial, sans-serif</span></span>; <span>}</span></span></span><span></<span>style</span>></span><span></<span>head</span>></span><span><<span>body</span>></span><span><<span>h1</span>></span>Welcome to nginx!<span></<span>h1</span>></span><span><<span>p</span>></span>If you see this page, the nginx web server is successfully installed and working. Further configuration is required.<span></<span>p</span>></span><span><<span>p</span>></span>For online documentation and support please refer to <span><<span>a</span><span>href</span>=<span>"http://nginx.org/"</span>></span>nginx.org<span></<span>a</span>></span>.<span><<span>br</span>/></span> Commercial support is available at <span><<span>a</span><span>href</span>=<span>"http://nginx.com/"</span>></span>nginx.com<span></<span>a</span>></span>.<span></<span>p</span>></span><span><<span>p</span>></span><span><<span>em</span>></span>Thank you for using nginx.<span></<span>em</span>></span><span></<span>p</span>></span><span></<span>body</span>></span><span></<span>html</span>></span># curl http://bbs.ycdata.net <span><!DOCTYPE html></span><span><<span>html</span>></span><span><<span>head</span>></span><span><<span>title</span>></span>Base port sample<span></<span>title</span>></span><span></<span>head</span>></span><span><<span>body</span>></span><span><<span>h1</span>></span>This is an based port website sample(prot:8080).<span></<span>h1</span>></span><span></<span>body</span>></span><span></<span>html</span>></span></code>