Apache Yii2 |使用htaccess重定向到后端/前端

Apache Yii2 |使用htaccess重定向到后端/前端,apache,.htaccess,yii2,yii2-advanced-app,Apache,.htaccess,Yii2,Yii2 Advanced App,我正在localhost上使用Yii2高级模板,我想在url为localhost/site/admin时将用户重定向到backend/web,在url为localhost/site时使用.htaccess文件重定向到frontend/web 我启用了apacherewrite,并尝试了这些解决方案 但在所有情况下,当url为localhost/site/admin 未找到 在此服务器上找不到请求的URL/site/admin 当url为localhost/site时,我的站点的根目录的内容

我正在
localhost
上使用Yii2高级模板,我想在url为
localhost/site/admin
时将用户重定向到
backend/web
,在url为
localhost/site
时使用
.htaccess
文件重定向到
frontend/web

我启用了
apacherewrite
,并尝试了这些解决方案



但在所有情况下,当url为
localhost/site/admin

未找到
在此服务器上找不到请求的URL/site/admin

当url为
localhost/site
时,我的站点的根目录的内容就会显示给我

现在,项目根目录中的my
.htaccess
是:

#防止目录列表
选项-索引
IndexIgnore*/*
#遵循符号链接
选项如下符号链接
重新启动发动机
重写规则^admin(/.+)?$backend/web/$1[L,PT]
重写规则^(+)?$frontend/web/$1
backend/web
frontend/web
中:

重新编写引擎打开
#如果存在目录或文件,请直接使用请求
重写cond%{REQUEST_FILENAME}-F
重写cond%{REQUEST_FILENAME}-D
#否则,将请求转发到index.php
重写规则。index.php

尽管我通过以下命令通过终端启用了
mod\u rewrite

sudo a2enmod rewrite

但它没有启用,我从‍
/etc/apache2/apache2.conf

尽管我通过以下命令通过终端启用了
mod\u rewrite

sudo a2enmod rewrite

但它没有启用,我从‍
/etc/apache2/apache2.conf

在没有
站点的情况下使用它

localhost/admin

不使用
站点

localhost/admin

我不确定,但我相信
RewriteRule^(+.+)admin(+/.+)?$backend/web/$1[L,PT]
应该可以工作。我认为您正在使用上述规则匹配
localhost/admin
。请告诉我进展如何。创建2个虚拟主机,通过排除
.htaccess
见@MartinDimitrov最后,我注意到尽管我‍<代码>修改重写通过终端启用,配置文件中没有更改,我手动进行了更改。@MuhammadOmerAslam感谢您的建议,但该站点必须位于共享主机上,我无权构建虚拟主机。如果您位于实时服务器上,您可以使用
符号链接
或前端和后端,或者按照此操作,我对此不确定,但是我相信
RewriteRule^(.+)admin(/.+)?$backend/web/$1[L,PT]
应该可以工作。我认为您正在使用上述规则匹配
localhost/admin
。请告诉我进展如何。创建2个虚拟主机,通过排除
.htaccess
见@MartinDimitrov最后,我注意到尽管我‍<代码>修改重写通过终端启用,配置文件中没有任何更改,我手动进行了更改。@MuhammadOmerAslam感谢您的建议,但该站点必须位于共享主机上,我无权构建虚拟主机。如果您位于实时服务器上,您可以使用
符号链接
或前端和后端,或者遵循此操作