需求背景:
系统中用户注册后会根据id生成其主页,如http://www.test.com/index/2
用户希望实现一级域名绑定,即,通过访问http://www.demo.com也能直接访问到其主页
我们系统采用的是apache + tomcat的环境,通过apache访问静态资源。
apache + tomcat的搭建配置不属于本文讨论范围。
解决方法,在apache的配置文件中加入vhost
<VirtualHost *:80>
#申请的一级域名,根据实际情况修改
ServerName www.demo.com
ServerAlias www.demo.com
DocumentRoot "/home/test/statics"
RewriteLogLevel 1
ErrorLog logs/demo_error.log
CustomLog logs/demo_cn.log common
<Directory "/home/test/statics">
Options FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
RewriteEngine on
#下行中的“2”为该用户的id号,根据实际情况修改
RewriteRule ^/$ /index/2 [R,L]
ProxyPass /images/ !
ProxyPass /swf/ !
ProxyPass /scripts/ !
ProxyPass /css/ !
ProxyPass / balancer://tomcatcluster/
ProxyPassReverse / balancer://tomcatcluster/
<Proxy balancer://tomcatcluster>
BalancerMember ajp://127.0.0.1:8009 route=jvmtest
</Proxy>
</VirtualHost>
添加完vhost后,重启下httpd服务,就实现了一级域名绑定。
顺便说一个很简单的二级域名绑定方式
在www.test.com的vhost中添加如下内容:
RewriteEngine on
RewriteCond %{HTTP_HOST} ^[0-9]+\.test.com$
RewriteRule ^/?$ /%{HTTP_HOST}
RewriteRule ^/([0-9]+)\.test\.com/?$ /index/$1 [R,L]
这样通过访问http://2.test.com也能范围到http://www.test.com/index/2中同样内容了
apache域名绑定的关键是urlrewrite,需要一点正则表达的知识。
如果有需要帮助的,给我留言就ok了,我会尽力帮忙的
分享到:
相关推荐
Apache站点绑定多个域名,用ServerAlias ,Apache站点绑定多个域名,用ServerAlias ,
关于apache域名绑定问题,Apache通过Rewrite实现绑定多个域名,如何在一个空间上建立多个相互独立的网站,怎样在一个虚拟主机空间上放多个网站,在一个服务器上设置多个网站
最近新装了个OJ系统,想着总是用ip访问挺难记得,就打算绑一个域名上去。在配置的过程中也遇到了一些问题,现在总结下面来分享给大家,方便有需要的朋友们参考学习。 方法如下 网上百度了很多教程,发现大家都是在...
apache设置域名绑定.docx
apache设置域名绑定 以及绑定不起作用的排查.docx
apache+tomcat整合以及域名绑定,教你发布javaweb网站
主要介绍了Lamp环境下设置绑定apache域名的方法,简单分析了Lamp环境下的Apache域名绑定设置相关属性、功能与操作技巧,需要的朋友可以参考下
apache 设置主机头,同一端口绑定多个域名和网站
这个是跟之前的一个个资源配套使用的,Linux PHP环境安装(可以查看我的资源),环境主要为Linux+Apache+PHP+MySQL,安装好环境以后,可以通过这个简单的配置,支持服务器多项目多域名的支持,只是简单的教程,仅供...
apache配置,只允许域名访问,不允许ip访问
【1】 打开文件路径:C:\Windows\System32\drivers\etc,修改hosts文件如下:【2】 打开路径:C:\wamp64\bin\apache\apache2.4.23\conf\original,打开httpd.conf文件,搜索 “Include conf/extra/httpd-vhosts.conf...
PHP服务器上配置apache绑定多域名[参考].pdf
一台服务器安装了APACHE,如何绑定多个域名和网站内容呢?最简单的方法当然就是不同的站用不同的端口。但这样就需在域名后加入端口号才能访问,不能直接以域名访问。另一个方法就是使用主机头名虚所主机了。打开...
主要为大家详细介绍了CentOS服务器apache绑定多个域名的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
apache+tomcat域名泛解析
windows2003下apache配置虚拟主机和绑定域名服务
配置环境 系统:win7 PHP版本:5.3.x MYSQL 版本:5.0.27 Apache:2.2.4 (Win32) 设置方法: 打开D:\wamp\bin\apache\Apache2.2.17\conf\httpd.conf 在最后添加 NameVirtualHost *:80 <VirtualHost> DocumentRoot “D:...
apache:一个ip绑定多个域名的问题 基于IP的虚拟主机使用连接的IP地址来决定相应的虚拟主机。这样,你就需要为每个虚拟主机分配一个独立的IP地址。 而基于域名的虚拟主机是根据客户端提交的HTTP头中标识主机名的...