1
我有一个yii2基本模板在本地工作正常,但是当我在服务器上上传文件时,它不起作用。在服务器上设置yii2基本应用程序
的index.php
<?php
// comment out the following two lines when deployed to production
//defined('YII_DEBUG') or define('YII_DEBUG', true);
//defined('YII_ENV') or define('YII_ENV', 'dev');
require(__DIR__ . '/../vendor/autoload.php');
require(__DIR__ . '/../vendor/yiisoft/yii2/Yii.php');
$config = require(__DIR__ . '/../config/web.php');
(new yii\web\Application($config))->run();
当我打开网址http://iicose.com/mlm/web/index.php
它给了我下面的错误
Warning: Unexpected character in input: '\' (ASCII=92) state=1 in /home/iicose/public_html/mlm/index.php on line 12
Parse error: syntax error, unexpected T_STRING in /home/iicose/public_html/mlm/index.php on line 12
我想通了,这是因为使用__DIR__
造成当我删除这个文件加载。但进一步,我必须根据它改变供应商目录中的任何地方,我认为这不是一个好习惯。
有人可以告诉我一个解决这个问题。
编辑: 这个问题的 Unexpected character in input: '\' (ASCII=92) state=1
生产服务器上的PHP版本是什么?似乎它是没有命名支持的旧版本。检查这个问题。 http://stackoverflow.com/questions/17156251/unexpected-character-in-input-ascii-92-state-1 – arogachev 2015-02-06 05:20:43
@arogachev伟大的帮助。我有PHP版本> 5.3.0这就是为什么它发生。如果有方法可以在不改变PHP版本的情况下解决这个问题(如果可能的话)。 – ankitr 2015-02-06 05:41:11
您是否意味着低于生产服务器上的'5.3.0'? Yii 2需要PHP 5.4,所以你必须在开发和生产服务器上至少有这个版本才能使它工作。 – arogachev 2015-02-06 05:46:15