Apache2多个文件夹

时间:2019-02-09 20:36:33

标签: laravel apache .htaccess

我的项目结构如下

root
   ra-cms-admin
      dist
         ra-cms-admin
            index.html
            ...
   ra-cms-public-and-api
      public
         index.php
         ...

ra-cms-admin是单页应用程序。我需要在用户转到/我想重定向到 ra-cms-public-and-api-> public-> index.php 时以及在用户转到/ admin(或/ admin)时/ something ...)我想重定向到单个 ra-cms-admin-> dist-> ra-cms-admin-> index.html ,否则我想始终重定向到 ra-cms-public-and-api-> public-> index.php (/ something ...)。

<IfModule mod_rewrite.c>
    RewriteEngine On

    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_URI} (.+)/$
    RewriteRule ^ %1 [L,R=301]

    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^admin ra-cms-admin/dist/index.html [L]
    RewriteRule ^ ra-cms-public-and-api/public/index.php [L]
</IfModule>

此应用程序项目位于我的服务器上的test文件夹中。因此,当您要访问此应用程序时,您需要进入localhost / test,但是我在admin部分遇到了问题,当我将localhost / admin放置时我仍被重定向到公共部分...有什么主意吗?根据{{​​3}}的说法,我的解决方案应该可以工作,管理员可以匹配...

2 个答案:

答案 0 :(得分:0)

可以尝试吗?

RewriteRule ^admin ra-cms-admin/dist/ra-cms-admin/index.html [R=301,L]

答案 1 :(得分:0)

向上移动,或使用RewriteCond。

,%