2010-08-03 30 views
3

我正在尝试将可选的移动版面添加到现有网站。在某些情况下,我希望能够为移动版本提供完全不同的内容,而不是普通版本的相同页面。如果用户访问了m.example.com/food/apple.html,他会看到一个完全不同的页面,而不是example.com/food/apple.html,没有m。子域。具体来说,我希望能够在目录中创建单独的apple.html和apple.mobile.html文件,然后使用mod_rewrite为移动版本提供服务,而不是常规版本,前提是用户在m版本中。子域。但是,并非每个页面都有单独的移动版本,所以我需要先检查以确保在尝试提供移动版本之前确实存在移动版本。使用mod_rewrite来为移动版本的页面提供服务

这可能吗?我试过这个:

RewriteCond %{SERVER_NAME} ^m\. 
RewriteCond $1.mobile.html -f 
RewriteRule (.*)\.html $1.mobile.html [L] 

......但它似乎没有工作。具体来说,第二个RewriteCond不匹配。我想我可能需要给它一个绝对路径。但是,如果是这样,插入“.mobile”部分时我该怎么做?如果不是,我做错了什么?

+0

啊,现在我明白你试图在这里做什么。我最初的评论(现已删除)很仓促,对不起。好问题 - +1 – 2010-08-03 20:01:08

回答

1

对于-f检查,您确实需要像您想象的绝对路径。看起来这应该不是太大的问题,你的情况,你可以只使用%{DOCUMENT_ROOT}

RewriteCond %{SERVER_NAME} ^m\. 
RewriteCond %{DOCUMENT_ROOT}/$1.mobile.html -f 
RewriteRule (.*)\.html $1.mobile.html [L] 
相关问题