隐藏网址中的文件夹,重写网址

时间:2013-11-06 15:11:15

标签: .htaccess mod-rewrite url-rewriting typo3

我有一个带有特殊托管结构的项目:

  • WWW
      • projectName(example.com)

我必须设置baseUrl config.baseURL = http://example.com/domains/example.com/。 网址示例http://example.com/domains/example.com/index.php?id=4

如果我只使用config.baseURL = http://example.com/。该网站有效,但会话不起作用,用户无法登录(他可以登录,但重新加载后他已登出)

我需要只有http://example.com/index.php?id=x的网址。

www文件夹中有1个具有这些规则的htaccess。

RewriteEngine On

RewriteCond %{REQUEST_URI} !^domains/
RewriteCond %{REQUEST_URI} !^/domains/
RewriteCond %{HTTP_HOST} ^(www\.)?(.*)$
RewriteCond %{DOCUMENT_ROOT}/domains/%2 -d
RewriteRule (.*) domains/%2/$1 [DPI]

RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,QSA,L]

RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^domains/[^/]+/(.+[^/])$ /$1/ [R]

另一个是在我的项目文件夹中。

我相信会有一个简单的htaccess规则。但我对此没有任何经验。我尝试使用Mod Rewrite Hide Folder的解决方案,但没有帮助。我试图在两个htaccess文件中使用它。

有什么想法吗?

谢谢!

1 个答案:

答案 0 :(得分:2)

您可以尝试将TypoScript选项config.absRefPrefix设置为/domain/www.example.com/

请参阅http://buzz.typo3.org/people/soeren-malling/article/baseurl-is-dead-long-live-absrefprefix/http://wiki.typo3.org/TSref/CONFIG