首页  >  文章  >  php教程  >  windows下 apache 二级域名相关配置

windows下 apache 二级域名相关配置

WBOY
WBOY原创
2016-06-13 11:29:36911浏览

小编今天给大家总结下 windows 下 apache的二级域名的相关配置  

下面就利用本地127.0.0.1进行测试

我们这里以 www.jobs.com 为例,以下代码中的 jobs.com 都可以替换成你自己想要的域名 这里只是为了测试。

我们的目标是,不同的子域名可以访问不同目录下的网站:

/ ;

/ ;

/news;

 

1、  开启apache的mod_rewrite功能(肯定是要让它支持重写的)在httpd.conf 找到  把前面的#号去了就行,

接着开启apache的虚拟主机 在httpd.conf 找到 把前面的# 号去了。

 

2、添加几个域名,在 C:\WINDOWS\system32\drivers\etc 目录中找到hosts 这个文件 记事本打开它,添加如下三个域名

127.0.0.1          www.jobs.com
127.0.0.1          jobs.com
127.0.0.1          news.jobs.com

 

3、在虚拟主机中填写相关代码 让它有权限访问 www目录,找到Apache2\conf\extra 目录下的  文件并打开 代码添加如下

<span <</span><span VirtualHost </span><span *:80</span><span ></span><span 
   DocumentRoot "E:/www"  // 这里是项目的目录
   ServerName localhost       //你的ip 或者你的域名
  </span><span <</span><span Directory </span><span "E:/www"</span><span ></span><span     // 这里是项目的目录
            Options Indexes FollowSymLinks
            AllowOverride all
           Order Deny,Allow
           Deny from all
           Allow from 127.0.0.1   
   </span><span </</span><span Directory</span><span ></span>
<span </</span><span VirtualHost</span><span ></span>

 

然后将www.jobs.com 绑定到 相关jobs项目所在目录 代码添加如下

<span <</span><span VirtualHost </span><span *:80</span><span ></span><span 
   DocumentRoot "E:/www/job"      // 这里是jobs所在的具体目录
   ServerName www.jobs.com        // 你的ip 或者 你的域名
   ServerAlias *.jobs.com              //这里 用 ServerAlias 让多个域名绑定到同一空间 也就是项目目录
   </span><span <</span><span Directory </span><span "E:/www/job"</span><span ></span><span         // 这里是jobs所在的具体目录
           Options Indexes FollowSymLinks
           AllowOverride all
           Order Deny,Allow
           Deny from all
           Allow from All
   </span><span </</span><span Directory</span><span ></span>
<span </</span><span VirtualHost</span><span ></span>

 

 

 弄好之后然后重启apache ,如果重启之后遇到apache启动报错 要查看apache的错误日志,根据需求进行修改。

 

4、在jobs目录下 建立 文件 在里面添加如下代码

 

<span RewriteEngine on

#让www.jobs.com 访问根目录

RewriteCond %{HTTP_HOST} ^www.jobs.com$
RewriteCond %{REQUEST_URI} !^/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /$1
RewriteCond %{HTTP_HOST} ^www.jobs.com$
RewriteRule ^(/)?$ /index.php [L]

#让news.jobs.com 访问news目录


RewriteCond %{HTTP_HOST} ^news.jobs.com$
RewriteCond %{REQUEST_URI} !^/news/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /news/$1
RewriteCond %{HTTP_HOST} ^news.jobs.com$
RewriteRule ^(/)?$ news/index.php [L]<br /><br /><span>我要绑定的是把news.jobs.com绑定到new目录中,所以不仅要在根目录放置</span><span class="wp_keywordlink_affiliate">.htaccess</span><span>文件,<br /><br />还要在new目录中放置.htaccess文件,new目录中的.htaccess写法如下:<br /><br /><span>RewriteEngine On</span><br /><span>RewriteBase /</span><br /><span>RewriteCond %{REQUEST_FILENAME} !-f</span><br /><span>RewriteCond %{REQUEST_FILENAME} !-d</span><br /><span>ErrorDocument 403 /404.htm</span><br /><span>ErrorDocument 404 /404.htm</span><br /></span></span>

 

一切完成之后 你就可以试试 www.jobs.com job.com  news.jobs.com 等访问了 就看到你想要的结果了  

如果需要其它二级域名访问的话 按照如上的方法要重复 2 、4 步就可以了,不需要在重启apache了 

 

 

本文所涉及的只为了测试环境所用 并为对安全性进行校验,请在一切设置好之后用于产品中。

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn