2015-05-08 69 views
0

对不起,非技术性术语;但请记住,我真的很想在发布之前找到解决方案。.htaccess:重写规则不工作,因为我想

在webroot文件夹下我有2个网站;这些都是切入点:

/frontend/web/index.php 
/backend/web/index.php 

我的目标是

  • 访问/frontend/web/index.php开放http://domain.tld
  • 访问/backend/web/index.php开放http://domain.tld/something

这是我webroot/.htaccess

RewriteCond %{REQUEST_URI} !^something 
    RewriteRule ^(.*)$ frontend/web/$1 [L] 
    RewriteRule ^(.*)/something$ backend/web/$1 [L] 

以这种方式,domain.tld/正在打开/frontend/web(GOOD),但也用于在一个htaccess文件匹配规则时domain.tld/something指向frontend/web/index.php代替backend/web/index.php

回答

2

前导斜线从URI中移除。这意味着这个表达式:

^(.*)/something$ 

永远不会匹配一个URI,它看起来像:

something/... 

尝试改变正则表达式:

RewriteRule ^something(.*)$ backend/web$1 [L]