apache 基与不同类型的虚拟主机

apache的虚拟主机分为三种:

基于ip的虚拟主机

基于端口的虚拟主机

基于域名的虚拟主机

基于域名的虚拟主机:

对apache做虚拟主机主要是修改/application/apache/conf/extra目录下面的httpd-vhosts.conf 文件

NameVirtualHost *:80

#
<VirtualHost *:80>
    ServerAdmin 15259513**@qq.com     管理邮箱
    DocumentRoot "/var/html/www/"      该域名要访问的主页的目录
    ServerName www.abc.com                  域名
    ServerAlias etiantian.com                    域名的别名
    ErrorLog "|/usr/local/sbin/cronolog /var/logs/apache/%Y/%m/error_www_%Y%m%d.log"
    CustomLog "|/usr/local/sbin/cronolog /var/logs/apache/%Y/%m/access_www_%Y%m%d.log"  combined              对日志做日志轮询。
</VirtualHost>
<VirtualHost *:80>
    ServerAdmin [email protected]
    DocumentRoot "/var/html/blog/"
    ServerName blog.abc.com
    ErrorLog "logs/blog-error_log"
    CustomLog "logs/blog-access_log" common
</VirtualHost>
<VirtualHost *:80>
    ServerAdmin [email protected]
    DocumentRoot "/var/html/bbs/"
    ServerName bbs.abc.com
    ErrorLog "logs/bbs-error_log"
    CustomLog "logs/bbs-access_log" common
</VirtualHost>

更改好httpd-vhosts.conf文件后需要在apache主配置文件进行授权。

vim httpd.conf   在该配置文件添加以下内容:

</IfModule>
<Directory "/var/html/">      用户访问主页的目录
    Options  -Indexes FollowSymLinks     -Indexes   不显示apache的目录结构
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>

Include conf/extra/httpd-vhosts.conf  将这行的注释去掉。

============================================================

基于不同端口的虚拟主机:

对apache做虚拟主机主要是修改/application/apache/conf/extra目录下面的httpd-vhosts.conf 文件

NameVirtualHost *:80
NameVirtualHost *:8000
NameVirtualHost *:8080

#
# VirtualHost example:
# Almost any Apache directive may go into a VirtualHost container.
# The first VirtualHost section is used for all requests that do not
# match a ServerName or ServerAlias in any <VirtualHost> block.
#
<VirtualHost *:80>
    ServerAdmin [email protected]
    DocumentRoot "/var/html/www/"
    ServerName www.etiantian.com
    ServerAlias etiantian.com
    ErrorLog "|/usr/local/sbin/cronolog /var/logs/apache/%Y/%m/error_www_%Y%m%d.log"
    CustomLog "|/usr/local/sbin/cronolog /var/logs/apache/%Y/%m/access_www_%Y%m%d.log"  combined
</VirtualHost>
<VirtualHost *:8000>
    ServerAdmin [email protected]
    DocumentRoot "/var/html/blog/"
    ServerName blog.etiantian.com
    ErrorLog "logs/blog-error_log"
    CustomLog "logs/blog-access_log" common
</VirtualHost>
<VirtualHost *:8080>
    ServerAdmin [email protected]
    DocumentRoot "/var/html/bbs/"
    ServerName bbs.etiantian.com
    ErrorLog "logs/bbs-error_log"
    CustomLog "logs/bbs-access_log" common
</VirtualHost>

更改好httpd-vhosts.conf文件后需要在apache主配置文件进行授权。

vim httpd.conf   在该配置文件添加以下内容:

</IfModule>
<Directory "/var/html/">      用户访问主页的目录
    Options  -Indexes FollowSymLinks     -Indexes   不显示apache的目录结构
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>

Include conf/extra/httpd-vhosts.conf  将这行的注释去掉。

时间: 2024-10-26 09:32:20

apache 基与不同类型的虚拟主机的相关文章

red hat 6&red hat 7 Apache网站搭建(二)虚拟主机

虚拟Web 主机指的是在同一台服务器中运行多个Web 站点,其中的每一个站点实际上并不 独立占用整个服务器,因此被称为'虚拟"Web 主机.通过虚拟Web 主机服务可以充分利用服务 器的硬件资源,从而大大降低网站构建及运行成本. 使用httpd 可以非常方便地构建虚拟主机服务器,只需要运行一个httpd 服务就能够同时支撑 大量的Web站点.httpd支持的虚拟主机类型包括以下三种. 基于域名: 为每个虚拟主机使用不同的域名,但是其对应的IP 地址是相同的.例如, www.benet.com和w

Linux运维实战之Apache服务器的高级配置(虚拟主机、status)

HTTP协议基础知识参考博文:http://sweetpotato.blog.51cto.com/533893/1656137 Apache2.2的基本配置参考博文:http://sweetpotato.blog.51cto.com/533893/1657668 Apache服务的配置分为三段: 1.全局配置(the 'global environment'):对主服务器或虚拟机都有效,且有些功能是服务器自身工作属性: 2.主服务器(main server):主站属性: 3.虚拟主机(Virtu

[单选题]一个php文件的地址为c:/apache/htdocs/phptutor/index.php,虚拟主机的地址是c:/apache/htdocs,那么$_SERVER[&#39;PHP_SELF&#39;]应该评价到哪个页面

index.php /htdocs/phptutor/index.php /phptutor/index.php c:/apache/htdocs/phptutor/index.php $_SERVER['PHP_SELF'] #当前正在执行脚本的文件名,与 document root相关.$_SERVER['argv'] #传递给该脚本的参数.$_SERVER['argc'] #包含传递给程序的命令行参数的个数(如果运行在命令行模式).$_SERVER['GATEWAY_INTERFACE']

apache工作机制,压缩,虚拟主机,用户认证

从服务器角度一次web资源请求具体过程 建立连接:tcp三次握手 接收请求 处理请求 访问资源 构建响应报文 发送响应 记录日志 =================================================================== httpd工作模型 阻塞模型,单进程模型.缺点:每次只能响应一个请求,对于现代的高并发无满足 只有一个进程,每次只能响应一个用户的请求 . 多进程模型,缺点:不停的创建和收回进程,进程间切换也耗费时间. httpd监听在套接字上,每当

Apache配置基于端口号的虚拟主机 Apache virtual host configuration is based on the port

有可能只有一个ip出口,但却有多个项目,那么就需要基于端口号架设虚拟主机. Step 1: 检查是否开启 httpd-vhosts.conf apache/conf/httpd.conf文件 # Virtual hosts Include conf/extra/httpd-vhosts.conf 如果没有开启,必须在httpd.conf文件中设置:如果开启,则可以在apache/conf/extra/httpd-vhosts.conf文件中设置,当然也还是可以再httpd.conf文件中进行设置

运维学习之Apache的配置、访问控制、虚拟主机和加密访问https

apache 一.安装Apache服务 yum install httpd -y systemctl start httpd systemctl stop firewalld systemctl enable httpd systemctl disable firewalld 二.apache信息 1.apache的默认发布文件 index.html 在默认发布文件内写入要展示的内容,在浏览器中输入本机http://172.25.254.126可以看到内容 2.apache的配置文件 /etc/

apache一个ip多个端口虚拟主机

1.打开httpd.conf,查找Listen:80,在下面一行加入Listen:8080:2.查找#Include conf/extra/httpd-vhosts.conf,将此行前面的#去掉:3.打开httpd.conf文件目录下面的extra文件夹下面的httpd-vhosts.conf文件:4.查找NameVirtualHost *:80,在下面一行增加NameVirtualHost *:8080:(可不写)5.复制httpd-vhosts.conf文件最下面的如下代码,并且在下面粘贴一

Apache服务器在80端口配置多域名虚拟主机的方法

我们在配置一台服务器的时候,如果只运行一个站点,往往过于浪费资源.Nginx和Apache都可以通过配置虚拟主机实现多站点.配置虚拟主机的方式主要有两种,一种是多个不同端口对应的多个虚拟主机站点,一种是同一端口对应多个不同域名的虚拟主机站点.这里我用80端口为例,在apache配置多个不同域名虚拟主机. 试验环境:windows+apache (linux+apache同理) 1.  虚拟机需要用到Rewrite,所以先编辑Apache的conf目录下的httpd.conf文件 掉Rewrite

win7下配置Apache本地虚拟主机

我们有时候从网上下载下来的php源码很多都是应用在网站根目录下的,而我们又想在本地先测试一遍确定没有问题了再上传空间,但一换到子目录下的时候因为路径问题,使得许多图片.内容都无法显示. 这个时候我们就需要营造一个根目录的环境去加载这些php源码,这就需要用到虚拟主机了.也就是将项目的子目录映射到一个域名中,当访问这个域名的时候相当于访问这个项目了.这样既能在本地运行项目,而且项目直接打包上传空间也能直接用了. 工具/原料 Apache服务器 方法/步骤 1.打开Apache的配置文件 httpd