CentOs7上的Laravel路由错误404(未找到)

时间:2018-12-20 08:55:23

标签: laravel

我创建了laravel项目,该项目在我的本地Windows pc上运行良好。一旦我(通过SSH)上传到Centos7服务器,除索引页面外,所有路由均显示“未找到404,https://ibb.co/tHysggf”。下图是我的项目结构。我删除公用文件夹,然后将index.php放在外面。

laravel

非常感谢所有答案。

2 个答案:

答案 0 :(得分:3)

1打开httpd.conf

   sudo vim /etc/httpd/conf/httpd.conf

2确保DocumentRoot指向laravel项目的公共目录。添加该路径的Directory元素和Allowoverride All ...,如下所示

DocumentRoot "/var/www/html/laravel/public/"

<Directory "/var/www/html/laravel/public">
Allowoverride All
</Directory>

3从../laravel/public/中打开.htaccess,并确保它具有以下内容

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

RewriteEngine On

# Redirect Trailing Slashes...
RewriteRule ^(.*)/$ /$1 [L,R=301]

# Handle Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
</IfModule>

4重新启动httpd服务

sudo service httpd restart

答案 1 :(得分:2)

也许这会对您有所帮助。 您需要更新index.php文件,

require __DIR__.'./vendor/autoload.php'; 
$app = require_once __DIR__.'./bootstrap/app.php';

和server.php

if ($uri !== '/' && file_exists(__DIR__.'/'.$uri)) {
    return false;
}

require_once __DIR__.'./index.php';