”工欲善其事,必先利其器。“—孔子《论语.录灵公》
首页 > 编程 > 为什么我的 Laravel 网站在将 Apache 升级到 2.4 并将 PHP 升级到 5.5.7 后显示空白屏幕?

为什么我的 Laravel 网站在将 Apache 升级到 2.4 并将 PHP 升级到 5.5.7 后显示空白屏幕?

发布于2024-11-17
浏览:258

Why is my Laravel site showing a blank white screen after upgrading Apache to 2.4 and PHP to 5.5.7?

Laravel 网站在 Apache 升级后显示空白屏幕

在升级到 Apache 2.4 和 PHP 5.5.7 之前,我的 Laravel 网站运行正常。但是,我现在在访问 laravel.mydomain.example 时遇到空白屏幕。 Apache 错误日志中没有记录任何错误。路由和配置应该与之前一样正确。

Apache 配置

确保 .htaccess 文件正确解析。在 /var/sites/laravel/public/.htaccess 中插入无效行应该会导致 500 错误,表明 .htaccess 正在加载。验证 .htaccess 文件中的以下设置:


    Options -MultiViews


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]
The virtual host directive should also be configured correctly:

DocumentRoot "/var/sites/laravel/public"
服务器名称 laravel.mydomain.example

AllowOverride All
allow from all
Options  Indexes
Require all granted


Laravel配置

日志文件权限:

升级Laravel 4.1及以上版本如果日志文件无法写入指定位置可能会遇到白屏错误。确保 app/storage 目录可由 Apache 用户写入(组可写或全局可写)。

Web Server User:

确定运行 PHP 的用户在您的服务器上。它可能是 Ubuntu/Debian 上的“www-data”或 CentOS/RedHat/Fedora 上的“apache”。

文件所有权:

将适当的所有权分配给PHP 用户:

# Debian/Ubuntu
$ sudo chown -R www-data /path/to/laravel/files

# CentOS/RedHat/Fedora
$ sudo chown -R apache /path/to/laravel/files
**File Permissions:** Set the app/storage directory permissions accordingly:

组可写(组、用户可写)

$ sudo chmod -R gu w app/storage

世界可写(组、用户、其他可写)

$ sudo chmod -R guo w app/storage

对于 Laravel 5 和 6 ,将这些权限应用于存储和 bootstrap/cache 目录:

# Group Writable (Group, User Writable)
$ sudo chmod -R gu w storage
$ sudo chmod -R gu w bootstrap/cache

# World-writable (Group, User, Other Writable)
$ sudo chmod -R guo w storage
$ sudo chmod -R guo w bootstrap/cache
最新教程 更多>
  • Java 中有效的 @SuppressWarnings 注解警告名称是什么?
    Java 中有效的 @SuppressWarnings 注解警告名称是什么?
    Java 中的@SuppressWarnings 注解警告名称@SuppressWarnings 注解应用于代码块时,会抑制某些类型的编译器警告。 @SuppressWarnings 注解中可以使用的有效警告名称因所使用的 IDE 或编译器而异。有效警告名称列表:以下列表包括 Eclipse Gal...
    编程 发布于2024-11-17
  • 如何在 Java 中绕 x 轴垂直旋转形状?
    如何在 Java 中绕 x 轴垂直旋转形状?
    围绕 x 轴垂直旋转形状提供的代码演示了如何旋转多边形,但它不会围绕 x 轴旋转它x 轴。要实现绕 x 轴的垂直旋转,我们可以将多边形旋转 90 度,然后应用所需的弧度旋转。修改后的代码如下:import java.awt.*; import java.awt.event.*; import jav...
    编程 发布于2024-11-17
  • 如何使用 MySQL 查找今天生日的用户?
    如何使用 MySQL 查找今天生日的用户?
    如何使用 MySQL 识别今天生日的用户使用 MySQL 确定今天是否是用户的生日涉及查找生日匹配的所有行今天的日期。这可以通过一个简单的 MySQL 查询来实现,该查询将存储为 UNIX 时间戳的生日与今天的日期进行比较。以下 SQL 查询将获取今天有生日的所有用户: FROM USERS ...
    编程 发布于2024-11-17
  • Bootstrap 4 Beta 中的列偏移发生了什么?
    Bootstrap 4 Beta 中的列偏移发生了什么?
    Bootstrap 4 Beta:列偏移的删除和恢复Bootstrap 4 在其 Beta 1 版本中引入了重大更改柱子偏移了。然而,随着 Beta 2 的后续发布,这些变化已经逆转。从 offset-md-* 到 ml-auto在 Bootstrap 4 Beta 1 中, offset-md-*...
    编程 发布于2024-11-17
  • 如何在 PHP 中组合两个关联数组,同时保留唯一 ID 并处理重复名称?
    如何在 PHP 中组合两个关联数组,同时保留唯一 ID 并处理重复名称?
    在 PHP 中组合关联数组在 PHP 中,将两个关联数组组合成一个数组是一项常见任务。考虑以下请求:问题描述:提供的代码定义了两个关联数组,$array1和$array2。目标是创建一个新数组 $array3,它合并两个数组中的所有键值对。 此外,提供的数组具有唯一的 ID,而名称可能重合。要求是构...
    编程 发布于2024-11-17
  • 大批
    大批
    方法是可以在对象上调用的 fns 数组是对象,因此它们在 JS 中也有方法。 slice(begin):将数组的一部分提取到新数组中,而不改变原始数组。 let arr = ['a','b','c','d','e']; // Usecase: Extract till index p...
    编程 发布于2024-11-17
  • 如何跨不同网页存储 JavaScript 变量?
    如何跨不同网页存储 JavaScript 变量?
    跨页面持久保存 JavaScript 变量在 JavaScript 中,变量的作用域通常仅限于定义它们的页面。但是,在某些情况下,您可能需要从一个页面访问另一页面的变量。这就是持久化变量的概念发挥作用的地方。跨页面持久化 JavaScript 变量的一种方法是利用 window.name 属性。此属...
    编程 发布于2024-11-17
  • 如何在多项目 Gradle 配置中包含跨模块的测试依赖关系?
    如何在多项目 Gradle 配置中包含跨模块的测试依赖关系?
    Gradle 中的多项目测试依赖关系在 Gradle 中使用多项目配置时,管理跨项目测试的依赖关系可能具有挑战性。本文探讨了一个常见问题,即一个模块的测试依赖项在另一个模块中无法识别,重点关注用户遇到的具体示例。用户具有包含两个项目 A 和 B 的多项目配置. 项目 A 包含主代码和测试源代码,而项...
    编程 发布于2024-11-17
  • 为什么在 C++ 中包含“cstdio”时,“printf”可以在没有“std::”的情况下工作?
    为什么在 C++ 中包含“cstdio”时,“printf”可以在没有“std::”的情况下工作?
    cstdio stdio.h 命名空间cstdio 的 C 参考声明“库的每个元素都在 std 命名空间内定义”。然而,您发现 std::printf 和 printf 都可以工作,这就提出了 C 标头是否在两个命名空间中都包含符号的问题。答案更加细致。包括 cstdio 包括 cstdio 将符号...
    编程 发布于2024-11-17
  • 使用 WordPress API 的综合指南:身份验证和后期调度
    使用 WordPress API 的综合指南:身份验证和后期调度
    在本指南中,我们将探讨如何使用 WordPress API 进行身份验证并安排特定发布时间的帖子。这些步骤将帮助您以编程方式安全地管理您的 WordPress 内容。 使用 WordPress API 进行身份验证 要安全地与 WordPress API 交互,您需要对您的请求进行身...
    编程 发布于2024-11-17
  • 如何在 Java 中将字符串转换为输入流?
    如何在 Java 中将字符串转换为输入流?
    Java中将字符串转换为InputStream给定一个字符串,可以方便地将其转换为InputStream对象以进行进一步处理.要实现此目的,可以利用 ByteArrayInputStream 类。此类包装了一个字节数组并将其公开为 InputStream。可以使用与所需字符串对应的字节来初始化字节数...
    编程 发布于2024-11-17
  • 为什么 Flex 项目不通过边距和“边框”大小缩小以适应每行三个?
    为什么 Flex 项目不通过边距和“边框”大小缩小以适应每行三个?
    Flex 项目忽略边距和边框大小在 Flexbox 中,通过设置 flex: 1 1 33.33% 和 margin: 10px on flex物品,人们可能期望每排三个盒子。然而,使用 flex-wrap:wrap 时,盒子不会缩小到每行三个。原因在于 box-sizing: border-box...
    编程 发布于2024-11-17
  • 如何在SQL存储过程中实现真正的动态排序?
    如何在SQL存储过程中实现真正的动态排序?
    SQL 存储过程中的动态排序:深入探究在 SQL 存储过程中动态排序的需求是 Web 和应用程序中的常见需求Windows 应用程序。然而,有效实现它的问题仍然存在。现有方法:Hackish 解决方案一种流行的方法涉及复杂的 PHP CASE-WHEN 构造,该构造动态分配排序列和基于参数值的方向。...
    编程 发布于2024-11-17
  • 如何修复 macOS 上 Django 中的“配置不正确:加载 MySQLdb 模块时出错”?
    如何修复 macOS 上 Django 中的“配置不正确:加载 MySQLdb 模块时出错”?
    MySQL配置不正确:相对路径的问题在Django中运行python manage.py runserver时,可能会遇到以下错误:ImproperlyConfigured: Error loading MySQLdb module: dlopen(/Library/Python/2.7/site-...
    编程 发布于2024-11-17
  • Ubuntu 升级后如何解决 Python 中的“ImportError: No module named 'encodings'”?
    Ubuntu 升级后如何解决 Python 中的“ImportError: No module named 'encodings'”?
    解决Ubuntu升级后Python中的“ImportError: No module name 'encodings'”问题无法获取语言环境编码时出现的问题,导致错误消息“ImportError:没有名为‘encodings’的模块。”尽管重新安装 Python 并设置环境变量,此问...
    编程 发布于2024-11-17

免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。

Copyright© 2022 湘ICP备2022001581号-3