Apache 配置虚拟主机三种方式 记事本打开httpd.conf文件 ,该文件在apache的目录下,如: D:\AppServ\Apache2.2\conf,修改如下两处: LoadModule vhost_alias_module modules/mod_vhost_alias.so //去掉前面的#,意思是启用apache的虚拟主机功能,第203行 Include conf/extra 文件夹,其中分别存放1.html、2.html、3.html /www/test1/1.html /www/test2/2.html /www/test3/3.html 在httpd.conf中将附加配置文件 其中ServerName和DocumentRoot所包含的内容应该与全局的保持一致,且要放在配置文件的最前面,扮演默认主机的角色。 大功告成,测试下每个虚拟主机,分别访问gm.998gx.com、www.998gx.com、r.998gx.com 三、基于端口 修改配置文件 将原来的 Listen 80 改为 Listen
那就是配置虚拟主机! 虚拟主机和默认网站在apache中不能同时存在,只能存在一种,当虚拟主机出现后,apache默认网站就失效了,如果你还需要默认网站,就拿虚拟主机在发布一次默认网站对应的站点即可解决。 1 修改主配置文件,打开虚拟主机子配置文件 [root@zutuanxue apache]# egrep "Include" conf/httpd.conf #Include conf/extra/httpd-mpm.conf [root@zutuanxue extra]# echo web2 > /usr/local/apache/htdocs/web2/index.html 3)设置子配置文件 [root@zutuanxue localhost6.localdomain6 192.168.11.251 web1.zutuanxue.com 192.168.11.251 web2.zutuanxue.com 2)修改虚拟主机配置文件
热卖云产品年终特惠,2核2G轻量应用服务器7.33元/月起,更多上云必备产品助力您轻松上云
修改Apache的虚拟主机配置文件 httpd-vhosts.conf,在文件的最后加上如下的代码: NameVirtualHost *:80 <VirtualHost *:80> ServerName www.web.com ServerAlias web.com DocumentRoot “E:\xampp\htdocs\web” </VirtualHost> 注意:请确保Apache 的主配置文件里加载了httpd-vhosts.conf,虚拟主机配置才会生效。 然后,进行DNS域名解析,重启Apache即可。 如果仅仅是本地测试或开发用,可以直接修改本地的hosts文件。
Apache默认虚拟主机 : 什么是虚拟主机?当你的一台服务器上面运行多个多个网站,每个网站都是一个虚拟主机! 任何一个域名解析到这台机器,都可以访问的虚拟主机就是默认虚拟主机 vim /usr/local/apache2.4/conf/httpd.conf //搜索httpd-vhost,去掉# 创建自定义站点 vim /usr/local/apache2/conf/extra/httpd-vhosts.conf //改为如下定义多个server name <VirtualHost *:80> ServerAdmin haha.com-error_log" CustomLog "logs/haha.com-access_log" common </VirtualHost> 以上每个VitualHost都对应一个站点,如上是两个自定义配置文件 php echo "welcome access haha.com"; ---- 检查服务是否配置正确: /usr/local/apache2.4/bin/apachectl –t /usr/local
基于ip的虚拟主机 案例:三个IP分别对应三个域名及三个目录 192.168.124.222 www.abc.com /var/www/abc 192.168.124.223 tec.abc.com
由于项目的需要,开始学习php,开始就把我跟憋住了,配置虚拟主机,看网上的配置,跟着一步一步的走,总是不通,原来呢,是没有使用虚拟主机配置是成功。 2、 <Directory "C:/php/Apache24/cgi-bin"> # AllowOverride None # Options None # Require all
LinuxApache虚拟主机管理 在物理机访问的域名“www.adai.com”并未在虚拟机Apache配置文件中定义,虚拟机中只定义了“ServerName www.example.com:80”一个域名 因为一台服务器可以跑多个域名,为了方便管理,需要对虚拟主机进行配置 配置虚拟主机 编辑Apache配置文件: vim /usr/local/apache2.4/conf/httpd.conf 搜索 Virtual 虚拟主机配置文件: vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf <VirtualHost *:80> ServerAdmin admin 打开虚拟主机文件以后那么http主配置文件失效。 注: 使用浏览器访问本地虚拟主机IP时会将IP指向到默认虚拟主机,即 abc.com。 (如果想回到原来的地址那么把虚拟主机配置文件中的#号加上注释掉配置文件即可)
这两个域名我们没有在httpd的配置文件里去定义,配置文件里只定义了一个www.example.com,这个就是Apache的默认主机,任何一个域名只要是指向到这个IP,就会访问到这个站点,这个站点就是默认虚拟主机 编辑httpd-vhosts.conf虚拟主机配置文件: 路径: vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf ? 从图片可以看到,运行的几个结果都是访问的abc.com,这是因为我们设置了虚拟主机配置文件,虚拟主机配置文件里的第一个虚拟主机就是abc.com,这个就是默认的虚拟主机,所以不管访问的是什么域名,只要这个域名是指向的这个 而且当我们访问www.example.com域名的时候,并不是访问的httpd.conf里面设置的那个域名,而是访问的是虚拟主机配置文件里的111.com,因为在虚拟主机配置文件里www.example.com 从测试结果中可以知道,一旦开启了虚拟主机配置文件,那么就会按照虚拟主机配置文件里面配置的去走,而不会按照httpd.conf里设置的去走。
/bin/apachectl –t - /usr/local/apache2/bin/apachectl graceful ## 默认虚拟主机 - 默认虚拟主机,可以理解成Apache(也就是httpd ,以DocumentRoot ,但这样不太好管理,毕竟一台服务器上可以跑多个域名,若不想域名都指向到这里,所以需要打开一个虚拟主机配置文件 打开虚拟主机,在/usr/local/apache2.4/conf /httpd.conf 配置文件中 [root@hf-01 ~]# vim /usr/local/apache2.4/conf/httpd.conf 搜索/extra 关键词,这一行就做虚拟主机 # /apache2.4/conf/extra/httpd-vhosts.conf //虚拟主机配置文件 在打开配置文件,会发现有两个<VirtualHost *:80> ,每一个<VirtualHost ,在Virtual hosts虚拟主机中也有定义,结果访问到了111.com 总结 在主配置文件中,httpd.conf里面,打开了虚拟主机配置文件,也就是删除到 # 号,那虚拟主机配置就生效了,一旦虚拟主机配置文件生效
这个时候就要了解虚拟主机的概念了。了解这个概念,能够帮助运维同学,更内涵的隐藏自己的主机,或者让一台apache支持多个网站的共同运营。 参考资料: 1 http://httpd.apache.org/docs/2.2/ 2《Apache cookbook》 虚拟主机寻址方式 IP地址方式:每台虚拟主机都有其唯一的IP地址 名称寻址方式:多台虚拟主机会以不同的名称在同一IP地址上运行 以名称寻址的虚拟主机 使用NameVirtualHost *指令以及<VirtualHost>区块 ServerName www/htdocs </VirtualHost> #_default_ 建立虚拟主机,处理所有未设定虚拟主机“地址:端口号”的请求 #_default_ 可与端口号同时使用 _default_:443 会接受443端口号的所有未设定虚拟主机的请求 端口号寻址的虚拟主机 Listen 8080 <VirtualHost 10.0.0.1:8080>
apache虚拟主机就是在apache服务器上配置多个虚拟主机,从而让一个服务器提供多站点的服务实现。通俗来说,就是对同一个服务器上的不同目录进行访问。 Apache基于名字的虚拟主机设置 这种方式,各个虚拟主机共享同一份Apache,因此有CGI程序运行时,安全性也不高。 维护这些虚拟主机时需要更改配置文件,并且需要重新启动 Apache 进程才能起作用。因此不适合进行大规模的虚拟空间服务。 有了多个IP地址后,可以采用以下两种方式来设置Apache。 1、为每个网站空间运行一份Apache采用这种方式,每一份Apache程序可以以单独的用户运行,因此各个虚拟主机之间互不影响。 设置这种虚拟主机时,只要为每一份Apache设置一套配置文件就可以了,必须使用“Listen”语句,强制每一份Apache仅仅在属于“自己”的IP地址上接收服务请求。
Apache配置虚拟主机无效 本今天电脑重新安装了一下apache,结果配置好虚拟域名之后,却一直无法访问;localhost 一直是显示it works 状态;配置好了虚拟域名之后,输入任何配置的域名也都是显示 从配置虚拟主机开始: 先在系统盘里的host文件开始: 先添加一个域名:127.0.0.1 www.m.com 打开httpd.conf文件,打开httpd-vhosts.conf: # Virtual hosts Include conf/extra/httpd-vhosts.conf 3.然后打开httpd-vhosts.conf文件,配置一个虚拟主机: <VirtualHost *:80> DocumentRoot "D:/wamp/apache/htdocs" ServerName www.m.com </VirtualHost> 4.重启Apache,这时虚拟主机的域名www.m.com 也都无法访问制定的文件代码; 通过localhost访问也是出于it works状态; 最后,发现只需要将httpd-vhosts.conf文件中: #ServerName localhost:80 注释掉,重新启动apache
文章目录 Apache 虚拟主机企业应用 部署一个端口不同域名 调试worker工作模式 进行压力测试 权限设置 Apache 配置文件详解 Apache Rewrite 规则讲解 Apache配置文件权限操作 总结 Apache 虚拟主机企业应用 企业真实环境中,一台WEB服务器发布单个网站会非常浪费资源,所以一台WEB服务器上会发布多个网站,少则3-5个,多则2-30。 部署一个端口不同域名 1、创建虚拟主机配置文件httpd-vhosts.conf 该文件默认已存在,只需要去掉httpd.conf配置文件中#即可。
apache2.4部分 conf/httpd.conf 1,Include conf/extra/httpd-vhosts.conf,去掉注释; 2,DocumentRoot “D:\apachespace test.cc-error.log” CustomLog “logs/test.cc-access.log” common # apache2.4 AllowOverride All Require all granted # 需注意,这段是apache2.4 如果没有注释掉 httpd.conf 中的 DocumentRoot 和 ServerName,那么第一个虚拟主机的这两个配置都必须与 httpd.conf 中的一样,包括端口。
最近发现在一个服务器上面布了一些项目,如果不用虚拟主机,用链接跳进去的话,有时候路径会出错,而自己在配置虚拟主机的时候又出现了一些问题,看似简单的东西,却花费了一上午,所以决定把简单的方法记下来,供和我一样的小白共勉 要先去 /etc/apache2/apache2.conf 将 HostnameLookups Off 改为 HostnameLookups On 然后进入 进入 /etc/apache2/sites-available 000-default.conf 新的配置文件名.conf ,比如新的配置文件为:index.conf 成功之后,使用 sudo vim index.conf 编辑该文件 刚进去大概是这样的 执行完后,会提示你重新载入apache服务,这是你要执行提示你的命令(如果权限不够的话在命令前面加上sudo) service apache2 reload 这时你进入 /etc/apache2/sites-enabled (这里面是你已经注册过的虚拟主机) 注:如果要取消注册的话,可以执行 sudo a2dissite index.conf 然后重启一下apache服务器 sudo service apache2
安装apache yum install -y httpd 2. 编辑apache配置文件 vim /etc/httpd/conf.d/vhost.conf 2. 启动apache服务 systemctl start httpd 4. 编辑apache配置文件 vim /etc/httpd/conf.d/vhost.conf 2. 重新编辑apache配置文件 vim /etc/httpd/conf.d/vhost.conf 3.
这篇是进阶篇,对Apache不熟悉的话可以先看看我这篇博客:LAMP(CentOS)环境详细配置步骤 有时候我们往往一个服务器会运行多个应用,此时就需要给每个应用创建虚拟主机了,这里我创建三个文件夹,分别运行三个页面 : 当然创建后直接在浏览器上是访问不了的,因为apache默认运行/var/www/html目录下的应用,此时就需要配置虚拟主机,可以先进入apache配置文件查看说明(可能有些版本没有这个说明 ) vim /etc/httpd/conf/httpd.conf 虚拟主机不一定要在httpd.conf配置,可以自己创建配置文件,这样便于管理,在配置文件我们可以看到,apache会读取conf.modules.d 目录下的配置文件,因此我们需要在这个目录创建配置文件: cd /etc/httpd/conf.modules.d vim vhost.conf 编辑内容如下: # 权限配置 <Directory Options FollowSymLinks AllowOverride None Order allow,deny Allow from all </Directory> # 虚拟主机配置
一:复制/etc/apache2/sites-available目录下的000-default.conf文件 sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/priess.conf image.png 二:将DocumentRoot /var/www/html 改为自己的目录,例如:DocumentRoot /etc/apache2/sites-enabled/mysite.conf 五:分别放不同的站点内容到 html和priess目录中 六:重启Apache服务器 reboot 访问百度效果: image.png 第二部分 基于端口的虚拟机 如:当我访问127.0.0.1显示网站1 当我访问127.0.0.1:8080 显示网站2 一:打开/etc/apache2/ports.conf文件添加一个端口,例如添加 cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/duankou.conf (和前二相同) 三
#LoadModule vhost_alias_module modules/mod_vhost_alias.so 去掉#意思是启用apache的虚拟主机功能。 VirtualHost *:80> ServerAdmin webmaster@dummy-host.www.phpStudy.net DocumentRoot "C:/Program Files/Apache2 一、虚拟主机混用能够这样理解:一行NameVirtualHost指令定义的全部虚拟主机为一组;该组与一个基于IP的虚拟主机平级。 四、一个虚拟主机,能够同一时候为基于域名和基于IP的。如上一例中最后一个虚拟主机。这样符合两种定义的请求都会被指同一个虚拟主机。 > 这个虚拟主机将接管与其他虚拟主机IP和port不匹配的请求。
实验要求:在一台主机上搭建2个网站服务 www.linuxidc.com www.linuxmi.com 实现基于域名的虚拟主机 实现基于IP的虚拟主机 实现基于端口的虚拟主机 一.创建实验环境 1.实现通过域名访问站点需要DNS的解析,可修改DNS数据库文件记录将2个站点IP都指向本机 1.修改主配置文件 # cd /etc/httpd/conf.d/ # vim vhost.conf NameVirtualHost 192.168.100.10:80 <VirtualHost 192.168.100.10 1.修改主配置文件 # ifconfig eth0:0 192.168.100.20 //设置另一个IP # vim /etc/httpd/conf.d/vhost.conf 1.修改主配置文件 # vim /etc/httpd/conf/httpd.conf ... 134 Listen 80 135 Listen 81 # vim /etc/httpd/conf.d/vhost.conf
云数据仓库Doris(cdwdoris)为您提供基于 MPP(大规模并行处理)架构的云端Doris托管服务,拥有开箱即用,弹性易扩展等特性。云数据仓库 Doris支持标准SQL语言,兼容MySQL协议,支持对PB级的海量数据进行高并发查询,和亚秒级的快速分析,帮助您轻松应对多种ETL数据处理和业务探索场景。
扫码关注腾讯云开发者
领取腾讯云代金券