在本地主机上运行 laravel 时出现内部服务器错误

Posted

技术标签:

【中文标题】在本地主机上运行 laravel 时出现内部服务器错误【英文标题】:Internal Server Error while run laravel on localhost 【发布时间】:2019-03-07 06:52:49 【问题描述】:

我是 laravel 的初学者。现在,我想在 localhost 上运行 laravel 项目。现在,我做了什么?我在resource/view/index.blade.php 中创建了index.blade.php 文件,并在routes/web.php 中修改了web.php 文件

路由/web.php

<?php
/*
|--------------------------------------------------------------------------
| Web Routes
|--------------------------------------------------------------------------
|
| Here is where you can register web routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| contains the "web" middleware group. Now create something great!
|
*/
Route::get('index', function () 
    return view('index');
);

资源/视图/index.blade.php

<!doctype html>
<html>
    <head>
        <title>Demo</title>
    </head>
    <body>
        <h1>Laravel start</h1>  
    </body>
</html>

我已将server.php 更改为index.php 并将.htaccess 文件从public 移动到根目录并重新启动apache 服务器。但它告诉我500 Internal Server Error。我已经运行localhost/laravel,但它不起作用。那么,我该如何解决这个问题呢?请帮帮我。

发生错误

Internal Server Error
The server encountered an internal error or misconfiguration and was unable to complete your request.

Please contact the server administrator at webmaster@dummy-host2.example.com to inform them of the time this error occurred, and the actions you performed just before this error.

More information about this error may be available in the server error log.

Additionally, a 500 Internal Server Error error was encountered while trying to use an ErrorDocument to handle the request.

Apache/2.4.29 (Win32) OpenSSL/1.0.2l PHP/5.6.32 Server at localhost Port 80

谢谢

【问题讨论】:

为您的错误提供详细信息,例如:代码行等 请看一次@TharakaDilshan 为什么要将 server.php 文件更改为 index.php 文件? 您可以关注Installation instructions 而不要重命名核心文件。 public 应该是您服务器的 DocumentRoot。 您可以在浏览器中调用您的路线。所以http://127.0.0.1:8000/index 应该显示您定义的路线。 laravel.com/docs/5.7/routing#basic-routing 【参考方案1】:

如果你们有克隆项目来自远程存储库或本地项目

    确保您有 .env.example 文件 如果存在复制内容并写入名为 .env 的新文件 如果没有 .env.example 文件,则创建 .env 文件并从新的 laravel 项目 .env 文件中粘贴文件

这样我解决了我的问题。希望对你也有帮助!!!

【讨论】:

【参考方案2】:

这可能是由于各种问题:

Artisan serve 不工作 触发文件权限问题 文件夹权限问题 Apache 服务器状态

您需要逐一测试,例如创建一个单独的文件夹,然后在一个带有简单echo "I am here"; 的新文件中查看它是否有效。

下一步你需要检查命令或替代项

然后你需要检查文件夹和文件的权限

如果仍然有问题,那么可能需要检查服务器设置。

【讨论】:

【参考方案3】:

如果您只需要创建新文件夹或文件,请不要更改 laravel 项目上的任何文件,然后按您知道的方式运行它。

如果你只想运行 laravel 项目,你可以运行它,但如果你想使用数据库,你应该使用 xampp 或 wampp localhost 服务器。

希望你能成功。

【讨论】:

【参考方案4】:
after fresh install , just run command "php artisan serve" , 
because server.php is modified to run server on any directory without putting project in xampp\htdocs , 
If You want to run through localhost replace index.php and .htaccess from public to root directory of project
hope this helps :)

【讨论】:

以上是关于在本地主机上运行 laravel 时出现内部服务器错误的主要内容,如果未能解决你的问题,请参考以下文章

当我在本地主机上运行我的服务器时出现问题(ruby on rails)

tesseract-php 包装器在本地主机上运行时出现路径错误

Laravel问题加载资产400错误请求

在 laravel 开始时出现 500 个内部错误

允许本地主机上的 cors

Rails - 在本地主机上创建内部服务器错误(500)