【问题标题】:Laravel how to remove index.php from urlLaravel 如何从 url 中删除 index.php
【发布时间】:2019-08-16 04:36:11
【问题描述】:

我在 Laravel 中创建了一个 about 页面并将其指向路由,但问题是当我转到 URL 时:http://localhost:8080/bsms/public/about 它不起作用,它说

抱歉,找不到您要查找的页面。

但是,http://localhost:8080/bsms/public/index.php/about 工作正常。我希望我的网址免于索引!

这些是我的路线

【问题讨论】:

  • 您使用什么来为站点提供服务,例如 MAMP、WAMP、XAMPP、php 的内置服务器等?
  • @RossWilson 我正在使用 xampp
  • 您应该将您的公用文件夹设置为项目的 Web 根目录。看看5balloons.info/install-laravel-5-7-xampp-windows
  • 可以分享一下目录结构吗

标签: php laravel url routes


【解决方案1】:

转到 /public/index.php 并在define('LARAVEL_START', microtime(true));之后添加打击代码

/*
 * redirecting addresses with /index.php/
 * */
$url = (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'on' ? 'https' : 'http') . '://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
if (strpos($url, '/index.php')) {
    $url = str_replace('/index.php', '', $url);
    header('Location: ' . $url);
    die();
}

【讨论】:

    【解决方案2】:

    你在本地吗?

    尝试将此行添加到公用文件夹中的 .htaccess 文件中:

    RewriteBase /
    

    所以应该是这样的:

    <IfModule mod_rewrite.c>
    RewriteBase /
    <IfModule mod_negotiation.c>
        Options -MultiViews -Indexes
    </IfModule>
    
    RewriteEngine On
    
    # Handle Authorization Header
    RewriteCond %{HTTP:Authorization} .
    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
    
    # Redirect Trailing Slashes If Not A Folder...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_URI} (.+)/$
    RewriteRule ^ %1 [L,R=301]
    
    # Handle Front Controller...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ index.php [L]
    </IfModule>
    

    如果不起作用,请尝试提供有关您的项目环境的更多详细信息。

    另外,url 应该指向这样的东西: bsms.test 或类似的。

    【讨论】:

    • 好的,打开控制台输入:php artisan serve 指向给定的url,通常是:127.0.0.1:8000
    【解决方案3】:

    您应该能够通过此 url http://localhost:8080/bsms/about 访问您的 about 页面(考虑到您的视图文件位于资源文件夹而不是公共文件夹中)。

    使用这些命令试一试

    php artisan config:clear
    php artisan cache:clear
    composer dump-autoload
    

    让我们知道进展如何。

    【讨论】:

      猜你喜欢
      • 2017-01-28
      • 2018-03-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-09-28
      • 2015-10-11
      • 2012-05-15
      • 1970-01-01
      相关资源
      最近更新 更多