日期:2014-05-17  浏览次数:20848 次

关于设置虚拟主机的问题
目前设置虚拟主机中遇到一个问题,不知道如何才能实现,希望大家能给点意见.
问题是这样的: 我想将本地的某个网页目录设置到一个域名下, 但是需要带一个指定的参数. 比如: 我的网站目录是在根目录 www 下的 www/shop/ ,后面要带上参数 index.php?id=1345 类似淘宝中个人网店的链接要将他的网店链接变成一个独立的域名.  

/// 我在httpd.conf里配置.如下

NameVirtualHost *:80

<VirtualHost *:80>
ServerAdmin 111@xxx.com
DocumentRoot d:/www/shop
ServerName 192.168.1.110

RewriteEngine On
RewriteRule ^/$ http://192.168.1.110/shop/index.php?id=3593 

ErrorLog logs/1-error.log
CustomLog logs/1-access.log common
</VirtualHost>


如果这样是可以直接跳转,但是IE 上显示的是 http://192.168.1.110/shop/index.php?id=3593  
我想当输入 http://192.168.1.110/ 时直接显示 http://192.168.1.110/shop/index.php?id=3593 这个页面的内容,但是地址栏不要跳转, 不知道怎样可以实现, 在后面加[P] 结果HTTP 错误 403 - 禁止访问 .

不知如何实现,大家帮帮忙!

------解决方案--------------------

友情帮顶 O(∩_∩)O~
------解决方案--------------------
RewriteRule ^/$ /shop/index.php?id=3593
------解决方案--------------------
应该用默认虚拟主机,还要程序支持(实际上多半就不需要重写了,程序里面可以自己判断host)
如果还要搭配重写规则,可以参考
RewriteCond %{HTTP_HOST} !^(www|bbs|你要保留的域名)\.example\.org$ [NC]
or使用三级域名
RewriteCond %{HTTP_HOST} !(.+)\.user\.example\.org$ [NC]
然后你自己的规则