【问题标题】:Laravel POST not working in apache2Laravel POST 在 apache2 中不起作用
【发布时间】:2016-10-10 07:25:52
【问题描述】:

我目前正在使用 Laravel 框架开发一个 Web 应用程序,并使用 php artisan serve 工具检查了链接是否正常工作。我在 apache 下对此进行了测试,但它没有相应地工作,所以我为应用程序设置了 mod rewrite 启用,现在它通常适用于我在浏览器中键入的所有 URL。 但是,每当我尝试处理 POST 路由时,它们根本不会被处理,并且我在浏览器控制台中收到 500 Internal Server Error。这个问题有哪些可能的解决方案?

edit 1:- 为了进一步澄清问题,我到目前为止使用的所有路由都在使用php artisan serve 提供的测试服务器时工作。

因此,这是我的 000_default.conf 用于测试:-

<VirtualHost *:80>
    <Directory /var/www/html>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride All
                Order allow,deny
                allow from all
    </Directory>

    ServerAdmin webmaster@localhost
    DocumentRoot /var/www/html

    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined

</VirtualHost>

# vim: syntax=apache ts=4 sw=4 sts=4 sr noet 

【问题讨论】:

  • 传递 csrf 令牌
  • 你的代码在哪里?
  • 您需要@GauravDave 的哪一部分代码?
  • 当您收到 500 服务器错误时,请在检查元素的预览部分添加您看到的错误。此外,添加您的路线、控制器和视图。
  • 说实话,什么都没有。相反,500 Internal server error 来自浏览器控制台。这适用于 laravel 测试服务器,但不适用于 apache 虚拟主机本身。

标签: php apache laravel


【解决方案1】:

在您的表单中添加此令牌

<input type="hidden" name="_token" value="{{ csrf_token() }}"> 

【讨论】:

  • 这些我都做了。我指的是这些在我在 apache 服务器中设置后将无法工作。
猜你喜欢
  • 2015-06-06
  • 2015-11-19
  • 2013-12-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-12-31
  • 1970-01-01
  • 2018-04-21
相关资源
最近更新 更多