我在其他應用程序的htaccess文件中使用了以下規則,將用戶從文件夾重定向到子域,但在訪問該子域時從該文件夾加載內容。CakePHP子域與htaccess
# REWRITE SUBDOMAIN TO FOLDER
RewriteCond %{HTTP_HOST} ^admin\.cameron\.com$
RewriteRule !^admin/? admin%{REQUEST_URI} [NC,L]
# REWRITE FOLDER TO SUBDOMAIN
RewriteCond %{THE_REQUEST} \s/admin/([^\s]*) [NC]
RewriteRule^http://admin.cameron.com/%1 [R=301,L]
所以,如果我去:http://cameron.com/admin
我結束了在http://admin.cameron.com/
但內容是從http://cameron.com/admin
裝載然而,這並不因爲其改寫爲CakePHP的2.x的工作顯然...
在我的htaccess文件中/app/webroot
我:
<IfModule mod_rewrite.c>
RewriteEngine On
# CAKEPHP RULES
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php [QSA,L]
# REWRITE SUBDOMAIN TO FOLDER
RewriteCond %{HTTP_HOST} ^admin\.cameron\.com$
RewriteRule !^admin/? admin%{REQUEST_URI} [NC,L]
# REWRITE FOLDER TO SUBDOMAIN
RewriteCond %{THE_REQUEST} \s/admin/([^\s]*) [NC]
RewriteRule^http://admin.cameron.com/%1 [R=301,L]
</IfModule>
如果我去:http://cameron.com/admin
它只是試圖加載AdminController,並沒有重定向你,如果我去:http://admin.cameron.com/
我只是得到一個500內部服務器錯誤。
有關如何使CakePHP工作的任何想法?
如果我是正確的,你只是想更改URL指向的子域的? – Daniel
嘗試添加此語句RewriteBase/app/webroot之後RewriteEngine在您的webroot .htaccess文件中 – SoftwareCarpenter