【发布时间】:2017-11-13 23:53:38
【问题描述】:
我将基本的 Laravel 项目部署到服务器。当我点击我的域时,它会返回默认的欢迎视图。当我在代码中添加简单的道路(见下文)并尝试在浏览器中输入该路线时,它会返回 500 内部错误。除“/”根路由外,所有路由都返回 500 错误。
文件夹结构:
/
#laravel
#subdoms
##api
Laravel 文件在 laravel 目录中,但公共目录中的文件在 api 目录中。
api目录下的.htaccess文件:
<IfModule mod_rewrite.c>
RewriteEngine On
# Redirect Trailing Slashes If Not A Folder...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/$ /$1 [L,R=301]
# Handle Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
# Handle Authorization Header
RewriteCond %{HTTP:Authorization} .
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
</IfModule>
存储目录及其中的所有内容对任何人都是可写、可读、可执行的。
laravel/storage/logs 中没有错误日志。
laravel/routes/web.php:
<?php
Route::get('/', function () { // works fine.
return view('welcome');
});
Route::get('hello', function () { // 500 internal error
return 'Hello world';
});
服务器信息:
服务器 - Linux CentOS - 阿帕奇 2.2 - 服务器端包括 - SSI - PHP 版本 7.0.17
【问题讨论】:
-
你好还是/你好?
-
有关系吗?
-
是的。 “/”表示路由文件。您在其中调用了welcome.blade.php,因此您想做的进一步调用将在该“/”之后进行。
-
你在@AshishPatel 的文档中哪里看到的?
-
laravel.com/docs/5.4/routing 使用了大量示例,其中一个是
users/(不在Route::group()部分),它不使用/users/