`

Apache绑定多域名配置多站点

    博客分类:
  • PHP
阅读更多

Listen 80
ServerName localhost
ServerAdmin webmaster@domain.com
ServerRoot "d:\Comsenz\Apache2"
DocumentRoot "d:\Comsenz\wwwroot"
LoadModule php5_module "d:\Comsenz\PHP5\php5apache2_2.dll"
PHPIniDir "d:\Comsenz\PHP5\php.ini"
<Directory "d:\Comsenz\wwwroot">
Options Indexes FollowSymLinks
Order allow,deny
Allow from all
</Directory>
Alias /icons/   "d:\Comsenz\Apache2\icons\"
<Directory "d:\Comsenz\Apache2\icons">
Options Indexes MultiViews
AllowOverride None
Order allow,deny
Allow from all
</Directory>
NameVirtualHost *:80
<VirtualHost *:80>
ServerAdmin sy-0099@21cn.com
DocumentRoot "d:\Comsenz\wwwroot"
ServerName *
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^(.*)/archiver/([a-z0-9-]+.html)$ $1/archiver/index.php?$2
RewriteRule ^(.*)/forum-([0-9]+)-([0-9]+).html$ $1/forumdisplay.php?fid=$2&page=$3
RewriteRule ^(.*)/thread-([0-9]+)-([0-9]+)-([0-9]+).html$ $1/viewthread.php?tid=$2&extra=page%3D$4&page=$3
RewriteRule ^(.*)/profile-(username|uid)-(.+).html$ $1/viewpro.php?$2=$3
RewriteRule ^(.*)/space-(username|uid)-(.+).html$ $1/space.php?$2=$3
</IfModule>
</VirtualHost>
重要是改这里:
NameVirtualHost *:80
<VirtualHost *:80>
ServerAdmin sy-0099@21cn.com
DocumentRoot "d:\Comsenz\wwwroot"
ServerName *
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^(.*)/archiver/([a-z0-9-]+.html)$ $1/archiver/index.php?$2
RewriteRule ^(.*)/forum-([0-9]+)-([0-9]+).html$ $1/forumdisplay.php?fid=$2&page=$3
RewriteRule ^(.*)/thread-([0-9]+)-([0-9]+)-([0-9]+).html$ $1/viewthread.php?tid=$2&extra=page%3D$4&page=$3
RewriteRule ^(.*)/profile-(username|uid)-(.+).html$ $1/viewpro.php?$2=$3
RewriteRule ^(.*)/space-(username|uid)-(.+).html$ $1/space.php?$2=$3
</IfModule>
</VirtualHost>
下面是改过的例子,可以实现:多域名显示不同文件夹的内容。
NameVirtualHost *:80
<VirtualHost *:80>
ServerAdmin sy-0099@21cn.com
DocumentRoot "d:\Comsenz\wwwroot"
ServerName # 例:www.baidu.com
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^(.*)/archiver/([a-z0-9-]+.html)$ $1/archiver/index.php?$2
RewriteRule ^(.*)/forum-([0-9]+)-([0-9]+).html$ $1/forumdisplay.php?fid=$2&page=$3
RewriteRule ^(.*)/thread-([0-9]+)-([0-9]+)-([0-9]+).html$ $1/viewthread.php?tid=$2&extra=page%3D$4&page=$3
RewriteRule ^(.*)/profile-(username|uid)-(.+).html$ $1/viewpro.php?$2=$3
RewriteRule ^(.*)/space-(username|uid)-(.+).html$ $1/space.php?$2=$3
</IfModule>
</VirtualHost>
NameVirtualHost *:80
<VirtualHost *:80>
ServerAdmin sy-0099@21cn.com
DocumentRoot "d:\Comsenz\wwwroot2"
ServerName #第二个域名。例:www.google.com
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^(.*)/archiver/([a-z0-9-]+.html)$ $1/archiver/index.php?$2
RewriteRule ^(.*)/forum-([0-9]+)-([0-9]+).html$ $1/forumdisplay.php?fid=$2&page=$3
RewriteRule ^(.*)/thread-([0-9]+)-([0-9]+)-([0-9]+).html$ $1/viewthread.php?tid=$2&extra=page%3D$4&page=$3
RewriteRule ^(.*)/profile-(username|uid)-(.+).html$ $1/viewpro.php?$2=$3
RewriteRule ^(.*)/space-(username|uid)-(.+).html$ $1/space.php?$2=$3
</IfModule>
</VirtualHost>
上面的是绝对的例子,可以完成实现多域名绑定同一IP服务器,而且显示不同文件夹内容,上面的第一个域名(WWW。BAIUCOM)显示的是WWWROOT里面的内容。下面的第二个域名显示的是(WWW。GOOGLE。COM)显示的是WWWROOT2里面的内容,两个都是根目录。可以完全实现多域名绑定,显示不同文件夹内容。严重鄙视用户名:“xiaoyuwxz”。扯蛋的说法。如果不知道就不要胡乱指点,浪费一天的时间。结果是实现不了。主机的方法根本没有办法实现。劝告大家不要轻信别人的方法,尤其是在收费的时候,一定要慎重再慎重。希望以上的示例会帮到大家。
以上的#后面的内容为重点:要改成绑定的域名。例可实现。再将文件夹的路径填写正确便可。找了几个月没有找到方法。没想到是这么简单便可实现。多亏没给他钱,要不然这钱也是白花了啊。唉。
Listen 80
ServerName localhost
ServerAdmin webmaster@domain.com
ServerRoot "d:\Comsenz\Apache2"
DocumentRoot "d:\Comsenz\wwwroot"
如果遇到错误是因为这一段代码没有删除,这几行代码留住第一行就可以了,下面的四行都删除,就可以识别两个域名绑定显示不同文件夹的内容了。LISTEN 80,只留住这一行,位置不变。其它的不用理会。
重新写一遍完整的例子。
Listen 80
LoadModule php5_module "d:\Comsenz\PHP5\php5apache2_2.dll"
PHPIniDir "d:\Comsenz\PHP5\php.ini"
<Directory "d:\Comsenz\wwwroot">
Options Indexes FollowSymLinks
Order allow,deny
Allow from all
</Directory>
Alias /icons/   "d:\Comsenz\Apache2\icons\"
<Directory "d:\Comsenz\Apache2\icons">
Options Indexes MultiViews
AllowOverride None
Order allow,deny
Allow from all
</Directory>
NameVirtualHost *:80
<VirtualHost *:80>
ServerAdmin sy-0099@21cn.com
DocumentRoot "d:\Comsenz\wwwroot"
ServerName # 例:www.baidu.com
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^(.*)/archiver/([a-z0-9-]+.html)$ $1/archiver/index.php?$2
RewriteRule ^(.*)/forum-([0-9]+)-([0-9]+).html$ $1/forumdisplay.php?fid=$2&page=$3
RewriteRule ^(.*)/thread-([0-9]+)-([0-9]+)-([0-9]+).html$ $1/viewthread.php?tid=$2&extra=page%3D$4&page=$3
RewriteRule ^(.*)/profile-(username|uid)-(.+).html$ $1/viewpro.php?$2=$3
RewriteRule ^(.*)/space-(username|uid)-(.+).html$ $1/space.php?$2=$3
</IfModule>
</VirtualHost>
NameVirtualHost *:80
<VirtualHost *:80>
ServerAdmin sy-0099@21cn.com
DocumentRoot "d:\Comsenz\wwwroot2"
ServerName #第二个域名。例:www.google.com
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^(.*)/archiver/([a-z0-9-]+.html)$ $1/archiver/index.php?$2
RewriteRule ^(.*)/forum-([0-9]+)-([0-9]+).html$ $1/forumdisplay.php?fid=$2&page=$3
RewriteRule ^(.*)/thread-([0-9]+)-([0-9]+)-([0-9]+).html$ $1/viewthread.php?tid=$2&extra=page%3D$4&page=$3
RewriteRule ^(.*)/profile-(username|uid)-(.+).html$ $1/viewpro.php?$2=$3
RewriteRule ^(.*)/space-(username|uid)-(.+).html$ $1/space.php?$2=$3
</IfModule>
</VirtualHost>

 

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

NameVirtualHost *:80
<VirtualHost *:80>
ServerAdmin abc@163.com
DocumentRoot "D:/www.abc.com"
ServerName abc.com
ServerAlias www.abc.com
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^(.*)/archiver/([a-z0-9-]+.html)$ $1/archiver/index.php?$2
RewriteRule ^(.*)/forum-([0-9]+)-([0-9]+).html$ $1/forumdisplay.php?fid=$2&page=$3
RewriteRule ^(.*)/thread-([0-9]+)-([0-9]+)-([0-9]+).html$ $1/viewthread.php?tid=$2&extra=page%3D$4&page=$3
RewriteRule ^(.*)/profile-(username|uid)-(.+).html$ $1/viewpro.php?$2=$3
RewriteRule ^(.*)/space-(username|uid)-(.+).html$ $1/space.php?$2=$3
</IfModule>
</VirtualHost>

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

用记事本打开httpd-vhosts.conf,该文件在apache\conf\extra,把下面的代码复制进去。
<VirtualHost 192.168.1.1:80>
DocumentRoot /www/web/
ServerName aaa.com
ServerAlias www.aaa.com

ErrorDocument 404 http://www.aaa.com/error.html
ErrorLog home/linuxpk/log/dummy-aaa.com-error_log
CustomLog home/linuxpk/log/dummy-aaa.com-access_log commom

     <Directory "/www/web/">
         Options FollowSymLinks
         AllowOverride None
         Order allow,deny
         Allow from all
     </Directory>
</VirtualHost>


<VirtualHost *:80>

     ServerAdmin aaa@126.com

     DocumentRoot /www/web/

     ServerName aaa.com

     ServerAlias www.aaa.com

     DirectoryIndex index.htm index.html index.php

     DefaultLanguage zh-CN

     AddDefaultCharset GB2312

     ErrorDocument 404 http://www.aaa.com/error.html

     ErrorLog www/log/dummy-aaa.com-error_log

     CustomLog www/log/dummy-aaa.com-access_log commom

     <Directory "/www/web/">

         Options FollowSymLinks

         AllowOverride None

         Order allow,deny

         Allow from all

     </Directory>

     <IfDefine PHP>

         php_admin_flag engine on

         php_admin_flag safe_mode off

         php_admin_value open_basedir none

         php_admin_value session.save_path "/usr/local/tmp/php/session"

         php_admin_value open_basedir "/www/web/usr/local/tmp/php"

    </IfDefine>

</VirtualHost>

 

 

例:主机IP是:192.168.1.1

你的主机上有三个域名:

www.a.com 网页文件放在E:webwww1

www.b.com 网页文件放在E:webwww2

www.c.com 网页文件放在E:webwww3

在apache的httpd.conf中加入

#设置不同的域名到不同的目录

NameVirtualHost 192.168.1.1

<VirtualHost 192.168.1.1>

ServerName www.a.com

DocumentRoot "E:webwww1"

</VirtualHost>

<VirtualHost 192.168.1.1>

ServerName www.b.com

DocumentRoot "E:webwww2"

</VirtualHost>

<VirtualHost 192.168.1.1>

ServerName www.c.com

DocumentRoot "E:webwww3"

</VirtualHost>

重起,就ok 了.

Apache VirtualHost Example

<VirtualHost *:80>

     ServerAdmin abc@126.com

     DocumentRoot /www/web/

     ServerName abc.com

     ServerAlias www.abc.com

     DirectoryIndex index.htm index.html index.php

     DefaultLanguage zh-CN

     AddDefaultCharset GB2312

     ErrorDocument 404 http://www.abc.com/error.html

     ErrorLog www/log/dummy-abc.com-error_log

     CustomLog www/log/dummy-abc.com-access_log commom

     <Directory "/www/web/">

         Options FollowSymLinks

         AllowOverride None

         Order allow,deny

         Allow from all

     </Directory>

     <IfDefine PHP>

         php_admin_flag engine on

         php_admin_flag safe_mode off

         php_admin_value open_basedir none

         php_admin_value session.save_path "/usr/local/tmp/php/session"

         php_admin_value open_basedir "/www/web/usr/local/tmp/php"

    </IfDefine>

</VirtualHost>

分享到:
评论

相关推荐

    Linux下Apache服务器的配置和应用

    实现同一个计算机能够配置多个IP地址并能进行多个站点目录的访问,要求如下: (1)识别计算机网卡,在同一台服务器上绑定多个IP地址,IP地址为192.168.1.10,192.168.1.20,对应的端口号为默认80端口。 (2)建立...

    apache服务器一个ip(如:127.0.0.1)和多个域名(虚拟主机)的绑定

    今天在学习PHP时,有这样的一个需求:一个ip(如:127.0.0.1)和多个域名(虚拟主机)绑定,以下是我的解决方案: 解决方案一:通过端口来区分不同的虚拟主机 ①按照绑定一个站点的方法做好准备 1. 先开发好自己的...

    Apache实现多端口多主机名配置

    主要介绍了Apache实现多端口多主机名配置的相关资料,需要的朋友可以参考下

    阿里云Linux系统Nginx配置多个域名的方法详解

    Nginx绑定多个域名,可通过把多个域名规则写一个配置文件里实现,也可通过分别建立多个域名配置文件实现,为了管理方便,建议每个域名建一个文件,有些同类域名则可写在一个总的配置文件里。 1. 比如我想建立两个...

    phpwamp下载

    8、多功能站点管理,自动定时重启服务器,自动定时重启Apache、mysql等相关服务。 首先打开Apache2.4站点管理,如下图 多功能php绿色集成环境,700个PHP版本随时切换。 然后创建站点,选择你想要的PHP版本,默认...

    纯绿色PHP环境套件安装包

    8、多功能站点管理,自动定时重启服务器,自动定时重启Apache、mysql等相关服务。 首先打开Apache2.4站点管理,如下图 多功能php绿色集成环境,700个PHP版本随时切换。 然后创建站点,选择你想要的PHP版本,默认...

    服务器全能环境UPUPW ANK 64位版.zip

    08、加强安全性,全局默认开启禁止未绑定域名访问。  09、新增FTP配置面板被动模式端口范围和访问日志开关。  10、新增ionCube Loaders解密组件于PHP7.1  V1.1.4更新列表:  01...

    Htaccess-Admin PHP子目录绑定管理平台 V3.0

     Htaccess-Admin V3.0新增对iis 7的支持,新增安全机制,系统始终会备份最后一次正确配置,当由于高级配置不当而导致站点无法访问时,可以直接恢复到最后一次正确配置,新增目录、域名格式合法性验证。  使用说明...

    doodoo.rar

    5.配置站点运行目录。回到站点列表,点击站点域名,点击网站目录,运行目录选择/public目录。 输入图片说明 6.配置伪静态,点击伪静态,复制下面代码到伪静态中,点击保存。 nginx 伪静态配置,apache请勿使用...

    PHP集成环境安装包(集成700个PHP版本随意切换,纯绿色无敌版)

    这里我已经建立了6个站点,采用端口来区分的,当然你也可以绑定域名,采用域名来区分不同的站点,站点管理可以用端口区分,也可以用域名区分,是通用的。(端口模式和域名模式的教程可以百度搜索,都有了) 下图我...

    MMM中国社区直销理财平台 v2016

    下载安装phpStudy使用请自行百度,3、在站点配置里绑定好域名,并把源码复制到相应的文件夹里4、利用phpmyadmin新建好数据库并导入压缩包中的数据库文件中的mmmchina.sql 具体操作打开phpStudy&lt;其他选项菜单&gt;&lt;重置...

    2016 年金博微分销源码出售,微分销系统,三级分销系统,微商分销系统

    然后在浏览器输入绑定的域名(需备案),会进入安装提示,(如果没有进入,说明站点目录权限或者站点配置有问题,权限必须设置为777,继承到子文件及目录),根据提示填写相应信息,安装后刷新页面即可进入登录页 ...

    BeLink短网址程序源码1.0.5_高质量超强_支持链接监控.zip

    2. 切换PHP版本为7.1以上,然后为虚拟主机绑定一个域名(运行目录需要绑定到public)… 3. 设置伪静态,根目录有一个htaccess.example,如果你是apache的环境只需要把文件重命名为.htaccess即可。另外,public目录的...

    【金博源码出售】 微分销系统+微商城+三级分销系统源码 PC端/移动端

    然后在浏览器输入绑定的域名(需备案),会进入安装提示,(如果没有进入,说明站点目录权限或者站点配置有问题,权限必须设置为777,继承到子文件及目录),根据提示填写相应信息,安装后刷新页面即可进入登录页 ...

    php绿色环境包(支持最新windows10系统,兼容XP系统)

    采用多功能集成环境在windows服务器上搭建PHP网站案例 服务器版本:Windows Server 2008 R2 Enterprise ... 这款PHPWAMP绿色集成环境也属于WAMP套件,...稍等片刻,全国各地网名就都能通过你绑定的域名访问你的网站了。

    UCMS通用建站系统 v1.4.6

    支持域名绑定,每个栏目均使用独立的数据表。字段添加方便快捷,能迅速完成任意栏目的搭建。 独创的伪静态系统 超级简单的伪静态配置,不必为配置伪静态规则烦恼,也无需忙碌于生成静态文件。 开启页面缓存后,...

    捷兔云支付源码最新开源版 搭建教程+对接当面付

    3. 进入后台 – 网站管理 – 网站配置,修改“网站链接”改成您的站点域名”,否则将导致支付回调,支付订单失败等问题 4.添加网站监控:后台网站设置-监控设置,把余额监控地址和结算监控地址监控起来,第一个频率...

    api对接主机控制面板源码虚拟主机云服务器域名IDC加盟网站源码程序模板PHP代理管理系

    5、 配置代理平台API连接信息 1) API用户即为代理账号; 2) 如果找不到自己的APIKEY,请登录代理后台idc.125800.vip,然后按下面方式获取 3) APIKEY获取: 登录主平台,进入管理中心,在后台主页内的基本...

    伯乐个人发卡源码.tar.gz

    5、 配置代理平台API连接信息 1) API用户即为代理账号; 2) 如果找不到自己的APIKEY,请登录代理后台idc.125800.vip,然后按下面方式获取 3) APIKEY获取: 登录主平台,进入管理中心,在后台主页内的基本...

    淘客帝国v5.12完美破解版

    2、增加了自动301跳转设置,选中的话,将自动把所有绑定的域名跳转到主域名。该功能在后台高级设置里。 3、增加了增加网站LOGO后台配置。该功能在后台高级设置内。 4、修复一个偶尔修改后台能造成配置丢失的情况。 5...

Global site tag (gtag.js) - Google Analytics