Windows下Apache服务器中自动配置二级子域名
今天我们介绍的这个办法,只需要简单修改 httpd-vhosts.conf 文件,配合 .htaccess 文件即可实现自动配置二级域名。 我们这里以 wpchina.com 为例,以下代码中的 wpchina.com 都可以替换成你自己想要域名。 我们的目标是,不同的子域名可以访问不同目录下的网站:
wpchina.com => / ; home.wpchina.com => /home; bbs.wpchina.com => /bbs; …
第一步,确认安装好 Apache 服务器,并支持 .htaccess 模块(需要开启mod_rewrite)。你可以参考这里或这里,或者直接下载XAMPP,默认支持此功能。 第二步,设置好二级域名。高级一点的可以在路由器里设置,如dd-wrt路由器支持域名泛解析,会很方便。简单一些的,直接修改hosts文件。 打开 C:\Windows\System32\drivers\etc\hosts 文件,在最后加入以下三行代码,并保存。Win7/Vista用户记得使用管理员权限编辑此文件,否则编辑后将无法保存。
127.0.0.1 wpchina.com 127.0.0.1 home.wpchina.com 127.0.0.1 bbs.wpchina.com
第三步,在 httpd-vhosts.conf 文件中绑定 wpchina.com 域名。 首先取消 NameVirtualHost *: 代码签名的 # 按照其中的样例,添加以下代码:
<VirtualHost *:80>
DocumentRoot "/xampp/htdocs/www/wpchina.com"
ServerName wpchina.com
ServerAlias *.wpchina.com
</VirtualHost>
设置之后,重新启动 Apache 服务器。 第四步,在网站根目录 /xampp/htdocs/www/wpchina.com 下创建 .htaccess 文件,并添加以下代码:
RewriteEngine on
#让www.wpchina.com 访问根目录CMS
RewriteCond %{HTTP_HOST} ^www.wpchina.com$
RewriteCond %{REQUEST_URI} !^/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /$1
RewriteCond %{HTTP_HOST} ^www.wpchina.com$
RewriteRule ^(/)?$ /index.php [L]
#让home.wpchina.com 访问home目录
RewriteCond %{HTTP_HOST} ^home.wpchina.com$
RewriteCond %{REQUEST_URI} !^/home/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /home/$1
RewriteCond %{HTTP_HOST} ^home.wpchina.com$
RewriteRule ^(/)?$ home/index.php [L]
#让bbs.wpchina.com 访问bbs目录
RewriteCond %{HTTP_HOST} ^bbs.wpchina.com$
RewriteCond %{REQUEST_URI} !^/wap/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /bbs/$1
RewriteCond %{HTTP_HOST} ^bbs.wpchina.com$
RewriteRule ^(/)?$ bbs/index.php [L]
第五步,在网站根目录 /xampp/htdocs/www/wpchina.com 下建立 home, bbs 两个子目录。并在每个目录下放一个 index.php 文件,文件内容为:
<?php echo $_SERVER['SCRIPT_FILENAME']; ?>
这时候,你可以试试,分别访问 wpchina.com, home.wpchina.com, bbs.wpchina.com ,就可以看到不同的访问结果。 按照上面的办法,以后如果要增加别的子域名,只要重复第二步和第四步就可以了,不再需要重启apache,影响到其他网站。 附注:本文所提到的配置子域名的办法,仅用于测试环境,未进行安全测试,请勿直接用于生产环境。 转载于http://wpchina.org
Windows下Apache服务器中自动配置二级子域名的更多相关文章
- Windows下Apache服务器搭建
Apache HTTP Server(简称Apache)是Apache软件基金会的一个开放源码的网页服务器,是世界使用排名第一的Web服务器软件,可以在大多数计算机操作系统中运行,由于其多平台和安全性 ...
- 死磕!Windows下Apache+PHP+phpmyadmin的配置
环境配置真的很烦很费时间,稍不小心就会出错,这是一个鸡肋体力劳动,耐心和忍耐少不了.这个资料已经非常详细了,其中变量和路径不是百分百吻合但是意思已经很清楚了.剩下的就是耐心的执行和琢磨了. 一. A ...
- Windows下Apache+MySQL+PHP快速配置的几种方法
Apache MySQL PHP Windows WAMP 1.易思EasySiteServer服务器集成环境 v1.0 (推荐) 尔创互联为推广其ESPCMS而开发的一个小东东,很好用.零配置,完 ...
- windows下Apache的虚拟主机配置
1.Apache虚拟主机: 在Apache上有关于虚拟主机的具体说明,具体可以参考Apache手册,这里简单的说一下虚拟主机主要分为两种: 1.基于主机名的虚拟主机(一个IP地址,多个网站) 2.基于 ...
- windows下apache服务器的下载,安装,配置
1.进行apache官网->Download->Files for Microsoft Windows->ApacheHaus,然后选择合适的版本下载 2.将下载下来的压缩包解压到合 ...
- windows下apache+php+mysql 环境配置方法
一 准备 1 下载apache http://httpd.apache.org/download.cgi#apache24 httpd-2.2.22-win32-x86-openssl-0.9.8t. ...
- [转]Windows 下 Apache Virtual hosts 简单配置
From : http://blog.csdn.net/wuerping/article/details/4164362 /* Author : Andrew.Wu [ Created on : 20 ...
- Windows下Apache 虚拟主机 VirtualHost 配置
以下方式适合原生 Apache, XAMPP 和 WAMP 套件 1.修改Apache配置文件(httpd.conf),如下: # Virtual hostsInclude conf/extra/ht ...
- windows下apache服务器开启压缩和网页缓存
找到配置文件:http.conf apache开启压缩 一.开启配置,去除下面代码前面的#号LoadModule deflate_module modules/mod_deflate.soLoadMo ...
随机推荐
- SX学SX内容 笔记?
某帖子笔记1 主要还是从三体吧某精品贴里看来的... 集合论 集合就是一堆东西...满足 1) 集合中的元素互异(即每种只有一个) 2) 集合中的元素无序(不是一个数组,集合中的元素没有显然的排序法则 ...
- Oracle开发之窗口函数 rows between unbounded preceding and current row
目录=========================================1.窗口函数简介2.窗口函数示例-全统计3.窗口函数进阶-滚动统计(累积/均值)4.窗口函数进阶-根据时间范围统计 ...
- shiro学习中报错解决方法
[1] 最近在学习shiro,在学习过程中出现了一个问题,报错如下: org.apache.shiro.UnavailableSecurityManagerException: No Security ...
- java 入门 第二季3
1.继承 1.java是单继承的,一个子类只有一个父类 父类,基类 子类,派生类 2.继承的好处:子类拥有父类的所有属性和方法,属性的修饰符不能是private 3.语法规则: class 子类 ex ...
- Js 旋转木马 轮播
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 【EM】代码理解
本来想自己写一个EM算法的,但是操作没两步就进行不下去了.对那些数学公式着实不懂.只好从网上找找代码,看看别人是怎么做的. 代码:来自http://blog.sina.com.cn/s/blog_98 ...
- JavaScript for循环里边异步操作问题。
问题:(DRIVING.search是异步操作) for循环中做异步操作会导致aDistances数组里边的数据全部都是从A_SHOP_INFO数组中最后一条数据获取的值. var iIdx = 0; ...
- 如何给DropDownList在后台代码中添加一个空的选项
代码如何: ddl_dept.Items.Insert(, new ListItem("---请选择---","")); new ListItem的第一个参数表 ...
- html与js传json值给php
//一段js代码 var data = {}, act = [], list = []; $('.set').find('input, textarea').each(function() { act ...
- 如何在yii的controller中调用外部action
问题: 在yii中,一个controller会包含若干个action.有时为了重用或代码管理等目的,我们希望这些action可以单独定义成一个类,然后在controller中使用.那么在yii中要如何 ...