首先,我必须说这个问题已被问到数千次。 我使用以下方法创建了我的Laravel 5.5项目:
composer create-project --prefer-dist laravel/laravel blog "5.5.*"
我没有在项目中添加任何内容。该项目在本地运行没有问题。 当我想在共享主机网站上托管项目时,问题就出现了(我正在使用 infinityfree.net )
Laravel 5.5的最低PHP版本: PHP> = 7.0.0
我的共享托管网站php版本: PHP版本7.0.19
我所做的唯一改变是:
我将 public 文件夹的内容复制到我项目的根文件夹中。
然后我将整个Laravel应用程序放在共享主机站点的 htdocs 文件夹中。
所以结构如下:
--htdocs
app
bootstrap
...
index.php
js
css
...
routes
vendors
...
我在 index.php 中更改了这两行(该应用在本地工作没有问题):
要求 DIR 。'/ .. / vendor / autoload.php';
- 我将其更改为 - >
要求 DIR 。'/ vendor / autoload.php';
$ app = require_once DIR 。'/ .. / bootstrap / app.php';
- 我将其更改为 - >
$ app = require_once DIR 。'/ bootstrap / app.php';
我仍然遇到这个常见错误:
laravel.ERROR:解析错误:语法错误,意外'?',期待变量(T_VARIABLE){“异常”:“[object](Symfony \ Component \ Debug \ Exception \ FatalThrowableError(代码:0):解析错误:语法错误,意外'?',在/home/vol11_7/epizy.com/epiz_22148680/htdocs/vendor/symfony/http-kernel/Exception/HttpException.php:24期待变量(T_VARIABLE) [栈跟踪]
答案 0 :(得分:0)
我认为你可以用它来解决你的问题。
require DIR.'../vendor/autoload.php';
$app = require_once DIR.'../bootstrap/app.php';
答案 1 :(得分:0)
Laravel 5需要更高的php版本,你需要在主机上将php版本更改为7.1或7.2
您使用的是当前的php版本?