【问题标题】:Laravel 5.2 - Getting 500 error when connecting with CSRF disabledLaravel 5.2 - 在禁用 CSRF 的情况下连接时出现 500 错误
【发布时间】:2017-02-02 12:30:09
【问题描述】:

我在连接到 Laravel API 时遇到 500 内部错误。

我的网站最初在 GoDaddy 上使用 example.com 作为主站点,api.example.com 作为 api,但后来决定将其移至 Google云平台。我继续使用 Debian 8 在 Google Compute Engine 中设置了一个实例。我正在使用 ISPConfig 3 来完成我所有的服务器工作。我在 Github 上的两个单独的仓库中有我的网站和我的 api。我将服务器目录转到 /var/www/example.com/web 并将我的主站点克隆到其中。由于这会在我网站的根目录中创建一个文件夹,因此我还进入了虚拟主机并将默认目录设置为指向新的克隆目录。

然后,我使用 ISPConfig 为我的 api 创建了另一个站点,并进入 DNS 并创建了一条 A 记录并将其指向与我的主站点相同的 IP。然后我进入 /var/www/api.example.com/web 并将我的 api 存储库克隆到其中,就像我的主站点一样。我进入我的 api 的虚拟主机并将默认目录指向我的新克隆目录。

我可以很好地访问 example.com,但是当我尝试登录时(这是进行 api 调用的第一点),我收到 500 内部错误。

我没有使用 CORS,也从未使用过,因为我使用自己的 JSON Web 令牌,因此我的 CORS 已关闭。

关于如何修复 500 错误的任何想法?

编辑

格式化

编辑 2

这些是 apache 错误日志中的最后两行:

[Sat Sep 24 21:17:17.095798 2016] [core:crit] [pid 17588] (13)Permission denied:  AH00529: /var/www/api.example.com/web/api/public/.htaccess pcfg_openfile: unable to check htaccess file, ensure it is readable

[Sat Sep 24 21:17:17.095875 2016] [authz_core:error] [pid 17588]  AH01630: client denied by server configuration: /var/www/api.example.com/web/error/403.html, referer: http://example.com/login

我不确定它为什么会抛出这个 .htaccess 错误。这是 Laravel 自动创建的 .htaccess。

【问题讨论】:

  • 错误 500 是由 Laravel 还是服务器本身提供的?如果通过 Laravel 检查存储/日志中的错误文件如果通过服务器检查 apache error.log
  • 好的,所以我用 apache 错误日志的最后两行编辑了帖子。这似乎是一个 .htaccess 问题。

标签: angularjs laravel debian


【解决方案1】:

错误说明您的问题是什么:Permission denied: AH00529: /var/www/api.example.com/web/api/public/.htaccess pcfg_openfile: unable to check htaccess file, ensure it is readable

使用 chmod 命令使 htaccess 可读:

chmod 644 /var/www/api.example.com/web/api/public/.htaccess

如果这没有帮助,还请检查this 答案

【讨论】:

  • 我继续并修复了该问题,但现在我收到“请求的资源上不存在'Access-Control-Allow-Origin'标头”错误。我在 Laravel 中禁用了 CORS,并且当我在那里使用它时,它正在 GoDaddy 上工作。
猜你喜欢
  • 2016-05-27
  • 1970-01-01
  • 2014-10-18
  • 2016-11-05
  • 1970-01-01
  • 2016-05-24
  • 2016-11-26
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多