.htaccess 使用htaccess设置指向文件夹的子域
大家好,我已经使用zend框架和干净的URL建立了一个网站-但是我需要设置一个子域,使其只指向我网站上的一个文件夹,即我希望子域.htaccess 使用htaccess设置指向文件夹的子域,.htaccess,.htaccess,大家好,我已经使用zend框架和干净的URL建立了一个网站-但是我需要设置一个子域,使其只指向我网站上的一个文件夹,即我希望子域admin.mysite.com指向mysite.com/admin,我想使用我的htaccess文件来完成 编辑------- 这是我的htaccess文件: RewriteEngine on RewriteCond %{HTTP_HOST} ^mysite.com [NC] RewriteRule (.*) http://www.mysite.com/$1 [L,
admin.mysite.com
指向mysite.com/admin
,我想使用我的htaccess文件来完成
编辑-------
这是我的htaccess文件:
RewriteEngine on
RewriteCond %{HTTP_HOST} ^mysite.com [NC]
RewriteRule (.*) http://www.mysite.com/$1 [L,R=301]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule .* index.php
RewriteRule !\.(js|ico|gif|jpg|png|css|htm|html)$ index.php
RewriteCond %{REQUEST_URI} !^/admin
RewriteCond %{HTTP_HOST} ^admin
RewriteCond %{REQUEST_URI} !^/admin
RewriteRule ^(.*)$ admin/$1 [L]
AddType text/css .css
AddHandler php5-script .php
在admin.mysite.com“/”上,您可以符号链接到“/admin”在现有URL地址上方尝试以下操作:
RewriteCond %{HTTP_HOST} ^admin
RewriteCond %{REQUEST_URI} !^/admin
RewriteRule ^(.*)$ admin/$1 [L]
编辑:为了防止它被解释为Zend Framework控制器,请在现有的RewriteCond
s上添加以下内容,以防止它转换管理员URL:
RewriteCond %{REQUEST_URI} !^/admin
我认为这应该解决所有问题
编辑:您的.htaccess
文件应该更像以下内容,尽管我认为任何更改都不会与您的403错误有关,但也许我们会幸运。如果不是,我会继续考虑是什么原因造成的
RewriteEngine on
RewriteCond %{HTTP_HOST} ^mysite.com [NC]
RewriteRule (.*) http://www.mysite.com/$1 [L,R=301]
# Don't rewrite requests on admin subdomain to the Zend Framework handler
RewriteCond %{HTTP_HOST} !^admin
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule .* index.php
RewriteCond %{HTTP_HOST} !^admin
RewriteRule !\.(js|ico|gif|jpg|png|css|htm|html)$ index.php [L]
RewriteCond %{HTTP_HOST} ^admin
RewriteCond %{REQUEST_URI} !^/admin
RewriteRule ^(.*)$ admin/$1 [L]
AddType text/css .css
AddHandler php5-script .php
在子域admin.mysite.com上使用指令重定向
Redirect permanent / http://mysite.com/admin
或者您可以使用代理:
ProxyPass / http://mysite.com/admin
ProxyPassReverse / http://mysite.com/admin
ProxyPreserveHost on
我不希望管理员文件夹被视为一个控制器-实际上我的管理员面板是一个不同的应用程序,所以我希望它独立运行。我的旧主机有一个真正简单的面板来创建子域,但在我的新主机上,我必须在htaccess文件中写入:(啊,明白了。我现在已经更新了答案,你可以试试看它是否有效。出于某种奇怪的原因,我出现了403错误?我的管理员文件夹在我的公共html文件夹中…而你的
.htaccess
文件在你的公共html
文件夹中,对吗?是的,没错..其他一切都正常..让我看看htaccess文件