목차
apache2.2 虚拟主机配置详解,apache2.2详解
一、修改httpd.conf
二、修改httpd-vhosts.conf
基于IP地址的虚拟主机
各种虚拟主机的混用
虚拟主机混用时的问题
使用"_default_"虚拟主机
백엔드 개발 PHP 튜토리얼 apache2.2 虚拟主机配置详解,apache2.2详解_PHP教程

apache2.2 虚拟主机配置详解,apache2.2详解_PHP教程

Jul 12, 2016 am 09:04 AM
가상 호스트

apache2.2 虚拟主机配置详解,apache2.2详解

一、修改httpd.conf

打开appserv的安装目录,找到httpd.conf文件,分别去掉下面两行文字前面的#号。 

#LoadModule vhost_alias_module modules/mod_vhost_alias.so  
로그인 후 복사

去掉#意思是启用apache的虚拟主机功能。

#Include conf/extra/httpd-vhosts.conf
로그인 후 복사

去掉这一行的#意思是从conf/extra/httpd-vhosts.conf这个文件导入虚拟主机配置

二、修改httpd-vhosts.conf

打开该文件,看到以下类似内容。虚拟主机的配置也是参照以下内容配置。下面对该内容进行讲解

NameVirtualHost *:80  
  
<VirtualHost *:80>  
    ServerAdmin webmaster@dummy-host.www.phpStudy.net  
    DocumentRoot "C:/Program Files/Apache2/docs/dummy-host.www.phpStudy.net"  
    ServerName dummy-host.www.phpStudy.net  
    ServerAlias www.dummy-host.www.phpStudy.net  
    ErrorLog "logs/dummy-host.www.phpStudy.net-error.log"  
    CustomLog "logs/dummy-host.www.phpStudy.net-access.log" common  
</VirtualHost>  
로그인 후 복사

NameVirtualHost *:80

注意1:NameVirtualHost 指定虚拟主机所使用的IP地址或域名,但是最好是IP地址。使用基于域名的虚拟主机时,NameVirtualHost是必要的指令。NameVirtualHost可以定义多个。 注意2:所有符合NameVirtualHost或标签定义的请求,都会被作为虚拟主机处理,而主服务器将不理会。NameVirtualHost定义了而标签没有定义的的请求,服务器会找不到相应的虚拟主机而将无法处理。所以每个NameVirtualHost定义的参数至少要有一个相匹配。 注意3:如果设置NameVirtualHost 或为*:80的话,所有针对80端口的请求,都会被虚拟主机处理,请求会根据域名指向某个虚拟主机。如果有来自80端口的请求,而所请求的域名没有被配置为虚拟主机,那将指向第一个虚拟主机。这样主服务器将无法收到来自80端口的任何请求。为此也要为主服务器配置一个虚拟主机。

ServerAdmin 管理员邮箱

DocumentRoot 网站目录 (注意:如果网站目录中的路径有空格,请在路径两端加上双引号)

ServerName 要绑定的域名(必填)

ServerAlias 要绑定的虚拟主机的别名。(可选,如果多个域名,中间以空格分隔,如果没有,则去掉该行)

支持*,?两种通配符,比如 *.abc.com,表示任意一个abc.com的二级域名都可访问。

CustomLog 用户日志文件(可选,如果不需要,则去掉该行)

ErrorLog 错误日志(可选,如果不需要,则去掉该行)

基于IP地址的虚拟主机

<VirtualHost 172.20.30.40>  
  DocumentRoot /www/example1  
  ServerName www.example.com  
</VirtualHost>  
로그인 후 복사

<VirtualHost 172.20.30.50 192.168.0.10:80>  
  DocumentRoot /www/example2  
  ServerName www.example.org  
</VirtualHost>  
로그인 후 복사

每个虚拟主机可定义多个IP,之间用空格隔开

各种虚拟主机的混用

Listen 80  
Listen 81  
  
NameVirtualHost 172.20.30.40  
  
<VirtualHost 172.20.30.40>  
    DocumentRoot /www/example1  
    ServerName www.example.com  
</VirtualHost>  
  
<VirtualHost 172.20.30.40>  
    DocumentRoot /www/example2  
    ServerName www.example.org  
</VirtualHost>  
  
NameVirtualHost 172.20.30.40:81  
  
<VirtualHost 172.20.30.40:81>  
    DocumentRoot /www/example3  
    ServerName www.example3.net  
</VirtualHost>  
  
# IP-based  
<VirtualHost 172.20.30.50>  
    DocumentRoot /www/example4  
    ServerName www.example4.edu  
</VirtualHost>  
  
<VirtualHost 172.20.30.60:81 172.20.30.40:81>  
    DocumentRoot /www/example5  
    ServerName www.example5.gov  
</VirtualHost>  
로그인 후 복사

虚拟主机混用时的问题

一、虚拟主机混用可以这样理解:一行NameVirtualHost指令定义的所有虚拟主机为一组;该组与一个基于IP的虚拟主机平级。即把一行NameVirtualHost定义的整个组看作是一个基于IP的虚拟主机。 二、虚拟主机指定的端口必须是Listen定义的。如果虚拟主机没有指定端口,则认为是80端口。如果NameVirtualHost * 这样定义,是指所有地址的所有已定义端口。 三、更具体的地址定义优先。比如NameVirtualHost指令定义了*:80,而某个基于IP的虚拟主机定义为192.168.0.1:80,那么此时如有对192.168.0.1:80的请求,那请求会被优先指向192.168.0.1:80定义的虚拟主机。所以为了避免混乱,不要定义相互有交叉或包含的地址区间。 四、一个虚拟主机,可以同时为基于域名和基于IP的。如上一例中最后一个虚拟主机。这样符合两种定义的请求都会被指同一个虚拟主机。有时要区别内外网对虚拟主机的访问时可以这样,因为来自内网的请求可能和来自外网的请求可能不一样,但是它们需要指向同一个虚拟主机。

使用"_default_"虚拟主机

这个虚拟主机可以理解成基于IP的虚拟主机

<VirtualHost _default_:*>  
    DocumentRoot /www/default  
</VirtualHost>  
로그인 후 복사

这个虚拟主机将接管与其它虚拟主机IP和端口不匹配的请求。不过如此一来,主服务器将不会处理任何请求。因此把主服务器配置成一个虚拟主机是必要的。

本地机器代理在其它机器上运行的虚拟主机

<VirtualHost 158.29.33.248>  
    ProxyPreserveHost On  
    ProxyPass /foo/no !  
    ProxyPass /foo http://192.168.111.2  
    ProxyPassReverse /foo http://192.168.111.2  
    ServerName hostname.example.com  
</VirtualHost>
로그인 후 복사

一、首先这是一个基于IP的虚拟主机,它接收并处理对IP地址158.29.33.248的请求。 二、ProxyPass /foo http://192.168.111.2 将把对http://158.29.33.248/foo的请求转换为一个代理请求,该请求指向http://192.168.111.2。 三、ProxyPass /foo/no ! 不代理针对/foo/no的请求。这个必须放在正常代理指令之前。 四、ProxyPreserveHost On 意思是传送原始请求的Host信息给被代理的机器。 五、ProxyPassReverse /foo http://192.168.111.2 可以保证请求URL在其它机器上被重定向后,本机处理时也可以保持一致。具体看手册关于反向代理的部分。 六、基于域名的虚拟主机也是同样的道理。不管是什么类型的虚拟主机,它只是处理归它处理的请求而已。

配置实例

需求1:

这是一个基于IP的虚拟主机使用实例

一个项目数据应用,为了防止由于域名解析问题导致不能正常访问,因此采用IP的方式访问接口。比如:http://61.122.3.6:8080/ 这样的方式。虚拟主机的配置如下:

1、在httpd.conf中Listen 80下面增加一行,内容为:Listen 8080,即监听8080端口

2、配置虚拟主机配置

#NameVirtualHost 61.122.3.6:8080 这一行可以不需要。经测试,基于IP地址的虚拟主机可不用设置NameVirtualHost项。  
<VirtualHost 61.122.3.6:8080>  
    ServerAdmin webmaster@dummy-host.www.phpStudy.net  
    DocumentRoot "d:/web/openj"  
</VirtualHost>  
로그인 후 복사

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/1072328.htmlTechArticleapache2.2 虚拟主机配置详解,apache2.2详解 一、修改httpd.conf 打开appserv的安装目录,找到httpd.conf文件,分别去掉下面两行文字前面的#号。 #...
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 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를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25 : Myrise에서 모든 것을 잠금 해제하는 방법
4 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

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

SublimeText3 중국어 버전

SublimeText3 중국어 버전

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

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

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

Pagoda 패널을 통해 가상 호스트의 속도 제한을 설정하는 방법 Pagoda 패널을 통해 가상 호스트의 속도 제한을 설정하는 방법 Jun 21, 2023 am 11:17 AM

Pagoda 패널은 Linux 시스템에서 매우 뛰어난 서버 관리 패널입니다. 강력한 기능과 친숙한 인터페이스를 갖추고 있어 사용자가 서버를 쉽게 관리할 수 있습니다. Pagoda 패널을 사용하는 과정에서 서버의 안정성과 유창성을 보장하기 위해 가상 호스트의 속도를 제한해야 하는 경우가 있습니다. 이 기사에서는 좋은 사용자 경험을 달성하기 위해 Pagoda 패널을 통해 가상 호스트의 속도 제한을 설정하는 방법을 소개합니다. 1. 속도 제한 개요 속도 제한이란 호스트 대역폭을 제한하고 호스트 트래픽을 제어하여 서버의 정상적인 작동을 보장하는 것을 의미합니다. 존재하다

Gin 프레임워크의 가상 호스트 및 도메인 이름 바인딩 기능에 대한 자세한 설명 Gin 프레임워크의 가상 호스트 및 도메인 이름 바인딩 기능에 대한 자세한 설명 Jun 22, 2023 am 09:10 AM

Gin 프레임워크는 웹 애플리케이션을 빠르게 구축하는 데 필요한 기본 기능을 제공하는 경량 웹 프레임워크입니다. Gin 프레임워크는 유연하고 효율적이며 확장성이 뛰어나 인터넷 분야에서 널리 사용됩니다. 그 중 Gin 프레임워크의 가상 호스트와 도메인 이름 바인딩 기능은 다른 웹 프레임워크에는 없는 중요한 기능입니다. 이 글에서는 이 기능을 자세히 소개하겠습니다. 1. 가상호스트란 무엇인가요? 가상 호스트는 물리적 호스트에 여러 개의 독립적이고 상호 격리된 가상 호스트를 생성합니다.

해외 무료 PHP 가상 호스트는 무엇입니까? 해외 무료 PHP 가상 호스트는 무엇입니까? Oct 16, 2023 am 09:57 AM

외국 무료 PHP 가상 호스트에는 DreamHost, Bluehost, Hostinger, 000Webhost, FreeHostia, Zymic, ByetHost 및 SiteGround가 포함됩니다.

PHP가 Tencent Cloud Server ECS에 연결하여 클라우드 가상 호스트 배포를 구현하는 방법 PHP가 Tencent Cloud Server ECS에 연결하여 클라우드 가상 호스트 배포를 구현하는 방법 Jul 07, 2023 am 10:07 AM

PHP가 Tencent Cloud Server ECS에 연결하여 클라우드 가상 호스트 배포를 구현하는 방법 소개: 클라우드 컴퓨팅의 급속한 발전으로 인해 점점 더 많은 기업과 개발자가 더 나은 탄력성과 보안 및 확장성을 얻기 위해 클라우드 서버에 애플리케이션을 배포하는 것을 선택하고 있습니다. 이 기사에서는 PHP를 사용하여 Tencent Cloud Server ECS(Elastic Compute Service)에 연결하여 클라우드 가상 호스트 배포를 구현하는 방법을 소개합니다. 1단계: Tencent Cloud Server ECS 인스턴스를 생성합니다. 먼저 해야 할 일이 있습니다.

가상 호스트 보안 보호를 위해 Pagoda 패널을 사용하는 방법 가상 호스트 보안 보호를 위해 Pagoda 패널을 사용하는 방법 Jun 21, 2023 pm 05:37 PM

인터넷 시대에 웹호스팅은 사용자가 자신의 웹사이트를 소유하고 쉽게 관리할 수 있도록 하는 매우 인기 있는 서비스입니다. 그러나 가상 호스트를 사용할 때 보안 문제도 주의를 기울여야 합니다. 이러한 상황에 대응하여 Pagoda Panel은 가상 호스트의 보안을 더 잘 보호하는 데 도움이 되는 좋은 솔루션을 제공합니다. 이 기사에서는 Pagoda 패널을 사용하여 가상 호스트의 보안을 보호하는 방법을 소개합니다. 1. 로그인 비밀번호와 포트를 설정하세요. Pagoda 패널을 사용하기 전, 첫 번째 단계는 보안 로그인 비밀번호를 설정하는 것입니다. 기본

Nginx가 도메인 이름 기반 가상 호스트 구성을 구현하는 방법 Nginx가 도메인 이름 기반 가상 호스트 구성을 구현하는 방법 Nov 08, 2023 pm 08:05 PM

Nginx가 도메인 이름 기반 가상 호스트 구성을 구현하는 방법에는 특정 코드 예제가 필요합니다. Nginx는 도메인 이름 기반 가상 호스트 구성을 구현하기 위한 유연한 구성 옵션을 제공하는 고성능 HTTP 및 역방향 프록시 서버입니다. 이 글에서는 도메인 이름 기반 가상 호스팅을 구현하기 위해 Nginx를 구성하는 방법을 자세히 소개하고 구체적인 코드 예제를 제공합니다. 먼저 Nginx 구성 파일에 가상 호스트 구성 블록을 추가해야 합니다. Ubuntu 시스템에서 기본 구성 파일 경로는 /et입니다.

웹사이트 성능과 사용자 경험을 향상시키기 위한 Nginx 가상 호스트 최적화 구성 웹사이트 성능과 사용자 경험을 향상시키기 위한 Nginx 가상 호스트 최적화 구성 Jul 04, 2023 pm 05:55 PM

웹사이트 성능과 사용자 경험을 향상시키기 위한 Nginx 가상 호스트 최적화 구성 소개: 요즘 인터넷의 지속적인 발전으로 웹사이트 방문 횟수도 증가하고 있습니다. 웹사이트의 입구로서 Nginx의 최적화된 구성은 웹사이트 성능과 사용자 경험을 향상시키는 데 중요한 역할을 합니다. 이 기사에서는 Nginx 가상 호스트 구성을 최적화하는 몇 가지 방법을 코드 예제와 함께 소개하여 이를 더 잘 이해하고 적용할 수 있습니다. 1. 가상 호스트 구성 가상 호스트는 Nginx에서 중요한 개념입니다. 가상 호스트 구성을 통해 다음을 수행할 수 있습니다.

Nginx를 사용하여 도메인 이름 및 경로를 기반으로 가상 호스트 구성을 구현하는 방법 Nginx를 사용하여 도메인 이름 및 경로를 기반으로 가상 호스트 구성을 구현하는 방법 Aug 02, 2023 pm 01:14 PM

Nginx를 사용하여 도메인 이름 및 경로를 기반으로 가상 호스트 구성을 구현하는 방법 소개: 네트워크 애플리케이션 개발에서는 다양한 서비스를 제공하기 위해 여러 가상 호스트를 구성해야 하는 경우가 많습니다. Nginx는 고성능 HTTP 및 역방향 프록시 서버입니다. Nginx를 사용하면 도메인 이름과 경로를 기반으로 가상 호스트 구성을 쉽게 구현할 수 있습니다. 이 기사에서는 Nginx를 사용하여 이러한 구성을 구현하는 방법을 소개하고 해당 코드 예제를 제공합니다. 1. 도메인 이름을 기반으로 하는 가상 호스트는 Nginx 구성 파일에서 다음을 사용하여 구성됩니다.

See all articles