2012-02-26 80 views
1

我在同一个TYPO3安装中使用正常站点和子域运行TYPO3。在正常站点上,自动检测移动设备,然后重新路由到子域。 在我的子域中,访问者使用以下.htaccess文件重定向到TYPO3树中的正确页面。使用.htaccess更改工作目录

Options +FollowSymlinks 
RewriteEngine On 
RewriteCond %{http_host} ^m.mysite.com [NC] 
RewriteRule ^(.*)$ http://m.mysite.com/index.php?id=74 [L] 

会发生什么情况是,游客在一个无限循环,在那里他被送到TYPO3网站,然后到子域名,然后再返回结束。为了得到这个工作,我还需要将工作目录更改为www.mysite.com(我也有另一个提供商,我可以使用cPanel进行这些更改,并且该网站可以完美运行)。我一直在寻找,并尝试几乎任何东西,但我根本没有足够的知识来改变工作目录。

那么,我应该使用什么代码来改变工作目录呢?

+0

请参阅下面的迈克尔的解决方案。除此之外,我还会用'/index.php?id=74'替换'http://m.mysite.com/index.php?id=74' – Gerben 2012-02-26 19:44:12

回答

0

使用RewriteCond不是遵循此规则index.php

Options +FollowSymlinks 
RewriteEngine On 
RewriteCond %{http_host} ^m.mysite.com [NC] 

# Failing the index.php check, the usual test is to look for any 
# existing file 

# EDIT: Changed URI to start with/- should work per comments 
RewriteCond %{REQUEST_URI} !^/index.php 
#RewriteCond %{REQUEST_FILENAME} !-f 
#RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ http://m.mysite.com/index.php?id=74 [L] 
+0

谢谢迈克尔, 但是这不起作用: - (。 它仍然处于一个无限循环中,还有什么我可以尝试的吗? – Ton 2012-02-26 13:27:40

+0

@Ton请参阅上面的编辑,不确定这是否适合您的情况 – 2012-02-26 13:40:37

+1

@ron'%{REQUEST_URI}'以'/'开始RewriteRule的第一个参数不是,如果你使用了'!^/index.php',它就可以工作,或者你可以使用'RewriteCond $ 1!^ index.php'。 – Gerben 2012-02-26 19:40:52