昨天实践了下在CentOS 5上通过Apache直接配置虚拟主机,服务器没有安装面板软件,所以只能通过SSH远程连接操作了。Apache安装在/etc/httpd目录下,这个即是Apache的根目录,所以Apache配置文件/etc/httpd/conf/httpd.conf中的ServerRoot设置的是ServerRoot “/etc/httpd”。
我们编辑httpd.conf,在虚拟主机配置区看到如下的代码:

#NameVirtualHost *:80
ps:中间数行无关紧要注释略去了。
#<VirtualHost *:80>
#    ServerAdmin webmaster@dummy-host.example.com
#    DocumentRoot /www/docs/dummy-host.example.com
#    ServerName dummy-host.example.com
#    ErrorLog logs/dummy-host.example.com-error_log
#    CustomLog logs/dummy-host.example.com-access_log common
#</VirtualHost>
重要的就是这两部分,用来配置虚拟主机的。假设服务器的IP是127.0.0.1,那么我们在范例后增加test.com这个域名的虚拟主机,绑定到/var/www/html/htdocs/test.com这个目录。/var/www/html/htdocs我设置为为网站根目录,所有用户的网站内容都放这个目录下面。(最好不要直接改原来的模版,可以copy之后增加虚拟主机配置,保留范例配置,#号表示注释,#号开头的行不会影响服务器)
我们首先在#NameVirtualHost *:80行下一行增加:NameVirtualHost 127.0.0.1:80(要写在虚拟主机配置前,可以就在上面#行上去除#号修改或者下一行加上这句。)

接下来在虚拟主机配置范例的下面增加test.com的虚拟主机配置:
<VirtualHost  127.0.0.1:80>
ServerAdmin webmaster@dummy-host.example.com
DocumentRoot /var/www/html/htdocs/test.com
ServerName test.com
ErrorLog logs/dummy-host.example.com-error_log
CustomLog logs/dummy-host.example.com-access_log common
</VirtualHost>

大家看到其中我仅修改了:
DocumentRoot /var/www/html/htdocs
ServerName test.com
这两行就OK了,其他几行对这个虚拟主机能否运行不重要,暂时先不设置了。实际运营时ServerAdmin要设置自己的邮箱以便接收通知。

从DocumentRoot可以看到/var/www/html/htdocs是我测试的网站test.com的根目录,所以这个网站内容直接通过ftp传到该目录下即可。

另外还要注意一点就是索引页优先级,这个也是在/etc/httpd/conf/httpd.conf中设置的,通过
DirectoryIndex index.html index.php
该行来指定服务器默认的索引页面(需要设置什么为索引页加在后面就可以了,中间空一格,访问的时候服务器会按从从到尾的优先级来锁定索引页)。

另外,test.com事先要在域名面板做好解析,指向服务器的IP127.0.0.1才行。解析和服务器端绑定都完成才能保证访问到网站。

CentOS 5上Apache配置虚拟主机范例的更多相关文章

  1. 【转】Apache 配置虚拟主机三种方式

    Apache 配置虚拟主机三种方式  原文博客http://www.cnblogs.com/hi-bazinga/archive/2012/04/23/2466605.html 一.基于IP 1. 假 ...

  2. apache配置虚拟主机的三种方式

    Apache 配置虚拟主机三种方式   一.基于IP 1. 假设服务器有个IP地址为192.168.1.10,使用ifconfig在同一个网络接口eth0上绑定3个IP: [root@localhos ...

  3. mac 上 mamp 配置虚拟主机 具体过程 ?

    https://www.zhihu.com/question/32320396 mac 上 mamp 配置虚拟主机 具体过程 ? 按照哪些配置什么的 都搞好了 但是还不好 配置的主机 制定的目录 还是 ...

  4. [Linux]Apache配置虚拟主机

    Apache 配置虚拟主机的方式很多,种类也很多,主要分为两类:   基于名称的虚拟主机 (每个 IP 多个站点) 基于 IP 的虚拟主机 (每个 IP 一个站点) 基于名称的虚拟主机:  www.2 ...

  5. apache配置虚拟主机后,启动速度慢

    apache配置虚拟主机后,启动速度慢且提示“the requested operation has failed” 可以通过在cmd下启动,来查找问题(命令中的“apache2.2”,是服务名,根据 ...

  6. lamp apache配置虚拟主机

    You don't have permission to access /index.php on this server

  7. Apache配置虚拟主机后让其他电脑访问

    关于Apache配置虚拟主机后在局域网中让其他电脑访问 #test1# NameVirtualHost *:80         ServerName  www.t1.com     Document ...

  8. windows环境利用apache 配置虚拟主机

    windows环境利用apache 配置虚拟主机 1.改动http.host #LoadModule vhost_alias_module modules/mod_vhost_alias.so #In ...

  9. Apache配置虚拟主机后,不能访问localhost的问题

    今天想试用一下php7,但是发现php7只支持Apache2.4版本,而我电脑上的Apache是2.2版本,为了想尝鲜,就必须去下载新的Apache2.4 php7和apache2.4安装整合以后,l ...

随机推荐

  1. lucene分词多种方法

    目前最新版本的lucene自身提供的StandardAnalyzer已经具备中文分词的功能,但是不一定能够满足大多数应用的需要.另外网友谈的比较多的中文分词器还有:CJKAnalyzerChinese ...

  2. Swift—do-try-catch错误处理模式-备

    Swift 1.x的错误处理模式存在很多弊端,例如:为了在编程时候省事,给error参数传递一个nil,或者方法调用完成后不去判断error是否为nil,不进行错误处理. let contents = ...

  3. Mysql时间戳开始时间1970-01-01 00:00:00和PHP date慢8小时

    mysql> select unix_timestamp('1970-01-01 00:00:01');+---------------------------------------+| un ...

  4. PHP curl 模拟登陆

    一个比较好的类: $cookie_file=tempnam("C:/users","tmp");生成以以tmp为前缀的文件. <?php define ( ...

  5. Android 调用图库选择图片实现和参数详解

    //选择图片,调用图库        bt4.setOnClickListener(new OnClickListener() { @Override            public void o ...

  6. Android调用第三方应用

    Intent intent=new Intent(); //包名 包名+类名(全路径) intent.setClassName("com.qn.app.store", " ...

  7. Sublime Text 3配置记录

    G++ /** * 工具->编译系统->新编译系统 */ { "cmd": ["g++", "${file}", "- ...

  8. (转)linux bash shell 入门教程

    Shell Script(bash)简介 众所皆知地,UNIX上以小工具著名,利用许多简单的小工具,来完成原本需要大量软体开发的工作,这一点特色,使得UNIX成为许多人心目中理想的系统平台. 在众多的 ...

  9. hibernate generator class="" id详解

    “assigned”   主键由外部程序负责生成,在   save()   之前指定一个.         “hilo”   通过hi/lo   算法实现的主键生成机制,需要额外的数据库表或字段提供高 ...

  10. 使用JMeter做压力测试

    使用JMeter做压力测试 1.下载Jmeter 地址:http://jmeter.apache.org/download_jmeter.cgi 2.启动jmeter 运行bin/jmeter.bat ...