laravel 5.6 服务器错误
Posted
技术标签:
【中文标题】laravel 5.6 服务器错误【英文标题】:laravel 5.6 server error 【发布时间】:2018-08-13 00:52:27 【问题描述】:我的网站在 localhost
上运行完美,但是当移动到实时服务器 Ubuntu 16.04 LTS
时出现此错误
[2018 年 3 月 5 日星期一 11:11:28.968821] [:error] [pid 19322] [client 156.212.75.255:61635] php 解析错误:语法错误,意外 '?',期望变量 (T_VARIABLE) 在 XXXXXXXXXX/ vendor/symfony/finder/Comparator/NumberComparator.php 在第 42 行 [Mon Mar 05 11:11:28.968895 2018] [:error] [pid 19322] [client 156.212.75.255:61635] PHP 致命错误:在第 0 行的 Unknown 中抛出没有堆栈帧的异常 [2018 年 3 月 5 日星期一 11:11:28.969374] [:error] [pid 19322] [client 156.212.75.255:61635] PHP 解析错误:语法错误,意外 '?',期望变量 (T_VARIABLE) 在 XXXXXXXXXX/vendor/symfony /finder/Comparator/NumberComparator.php 在第 42 行 [Mon Mar 05 11:11:28.969390 2018] [:error] [pid 19322] [client 156.212.75.255:61635] PHP 致命错误:在第 0 行的 Unknown 中抛出没有堆栈帧的异常
我该如何解决这个问题以及删除公共目录的正确方法是什么?
【问题讨论】:
你的服务器上有什么 php 版本? php版本为7.0 我升级了 php 版本,现在我的服务器 php 是 PHP 7.2.2,我的本地版本是 PHP 7.2.0 我仍然遇到同样的错误 【参考方案1】:禁用php7.0
sudo a2dismod php7.0
启用php7.1
sudo a2enmod php7.1 #to enable 7.1
重启apache
sudo service apache2 restart
【讨论】:
【参考方案2】:如果您查看源代码code。
/**
* @param string|int $test A comparison string or an integer
*
* @throws \InvalidArgumentException If the test is not understood
*/
public function __construct(?string $test)
?string
,它被称为Nullable
类型。此功能出现在 php 7.1
之后(请参阅文档 here)。所以你需要在你的服务器上升级 php 版本。确保您获得最低 php 版本 7.1
。或者与您的本地环境相同。
【讨论】:
我按照您的建议升级了 php 版本,现在我的服务器 php 是 PHP 7.2.2,我的本地版本是 PHP 7.2.0 我仍然遇到同样的错误 是的,一切都很好,现在我将 php 版本升级到 7.2 并运行此命令 sudo a2enmod php7.2 sudo a2dismod php7.0 sudo service apache2 restart 太棒了!很高兴能提供帮助。 :)【参考方案3】:点击此链接将 php 版本升级到 7.2
https://thishosting.rocks/install-php-on-ubuntu/
然后运行这个命令
sudo a2enmod php7.2 须藤a2dismod php7.0
sudo service apache2 重启
【讨论】:
【参考方案4】:检查你的php版本,很有可能就是这样:
对于 ubuntu 家庭:
> a2dismod php5.6 #current version
> a2enmod php7.1 #required version ( 7.0, 7.1, 7.2 )
> service apache2 restart
【讨论】:
以上是关于laravel 5.6 服务器错误的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Laravel 框架中降级? (5.6 至 5.5)
在 laravel 5.6 中找不到 Trait 'App\HasRoles' 错误
Laravel 默认错误页面在服务器中有所不同 [minimal.blade vsillustrated.blade]