Laravel 4管理路径与管理文件夹相同



我有一个/admin文件夹,我无法删除,因为有旧文件链接到外部,我需要使用/admin路由。当我使用/admin路由时,我有一个循环,如果我重命名admin文件夹,它会起作用,但我不能永远这样做。如果我使用其他路由,比如/admin/anything,它会起作用。

我怎样才能让文件夹和路线一起工作。

以下是我的路线:

Route::post('admin/login/valida', ['before' => 'csrf', 'uses' => 'LoginController@getValidar']);
Route::get('admin/login', 'AdminController@Login');
Route::get('admin/asociarmenuarchivo', 'AdminController@Asociarmenuarchivo');
Route::get('admin/disenosnuevos', 'AdminController@disenosNuevos');
Route::get('admin/disenosnuevooantiguo', 'AdminController@switchDisenos');
Route::get('/admin', 'AdminController@getIndex');

最后一条是唯一不起作用的路线。

这是我的.htaccess:

<IfModule mod_rewrite.c>
    <IfModule mod_negotiation.c>
        Options -MultiViews
    </IfModule>
    RewriteEngine On
    RewriteBase /
    # Redirect Trailing Slashes...
    RewriteRule ^(.*)/$ /$1 [L,R=301]
    # Handle Front Controller...
    # RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond   %{REQUEST_URI}  !/cm/.*
    #RewriteCond   %{REQUEST_URI}  !/admin/.*
    RewriteCond   %{REQUEST_URI}  !/correo/.*
    RewriteRule !^/?admin index.php [L,QSA]
    RewriteRule ^ index.php [L]
    ErrorDocument 401 "Unauthorised"
</IfModule>

问题是斜杠重写,解决方案是:

RewriteCond   %{REQUEST_URI}  !/admin/.*
RewriteRule ^(.*)/$ /$1 [L,R=301]

最新更新