简体   繁体   English

Laravel URL重定向

[英]Laravel URL redirect

my project url is http://localhost/starmaker/admin 我的项目网址是http:// localhost / starmaker / admin

site works fine but when i add an extra slash to the url it redirect the site to localhost 站点工作正常,但是当我在URL中添加额外的斜杠时,它将站点重定向到localhost

like this http://localhost/starmaker/admin/ (i added an extra slash after admin) and hit enter 像这样http:// localhost / starmaker / admin / (我在admin之后添加了一个斜杠)并按Enter

http://localhost/admin http:// localhost / admin

I want the url should be http://localhost/starmaker/admin 我希望网址应为http:// localhost / starmaker / admin

.htaccess and index.php is placed in root directory not in public folder .htaccess和index.php放置在根目录中而不是公共文件夹中

HTACCESS CODE HTACCESS密码

<IfModule mod_rewrite.c>
    <IfModule mod_negotiation.c>
        Options -MultiViews
    </IfModule>

    RewriteEngine On

    # Redirect Trailing Slashes If Not A Folder...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_URI} !^/[0-9]+\..+\.cpaneldcv$
    RewriteCond %{REQUEST_URI} !^/[A-F0-9]{32}\.txt(?:\ Comodo\ DCV)?$
    RewriteRule ^(.*)/$ /$1 [L,R=301]

    # Handle Front Controller...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_URI} !^/[0-9]+\..+\.cpaneldcv$
    RewriteCond %{REQUEST_URI} !^/[A-F0-9]{32}\.txt(?:\ Comodo\ DCV)?$
    RewriteRule ^ index.php [L]
</IfModule>

# Disable Directory listing
Options -Indexes

# block files which needs to be hidden // in here specify .example extension of the file
<Files ~ "\.(env|json|config.js|md|gitignore|gitattributes|lock|example)$">
    Order allow,deny
    Deny from all
</Files>

# in here specify full file name sperator '|'
<Files ~ "(artisan)$">
    Order allow,deny
    Deny from all
</Files>

ROUTING CODE 路由代码

Route::get('/', function () {
    $login_user_id = \Session::get('id');
    if (isset($login_user_id) || $login_user_id != "") {
        Redirect::to('user/profile')->send();
    } 
    else {
        return View::make('frontend.welcome');
    }
});

Route::get('admin', function () {
    return View::make('backend.adminlogin');
});

Route::controller('admin',                  'adminController');

You have to do a little change in the .htaccess file in public directory 您必须对公共目录中的.htaccess文件进行一些更改

Find the following lines 找到以下几行

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

and remove them or add hash # in the beginning like below to comment it. 并删除它们或在开头添加哈希# ,如下所示。

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

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM