2015-02-06 71 views
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

+1

生產服務器上的PHP版本是什麼?似乎它是沒有命名支持的舊版本。檢查這個問題。 http://stackoverflow.com/questions/17156251/unexpected-character-in-input-ascii-92-state-1 – arogachev 2015-02-06 05:20:43

+0

@arogachev偉大的幫助。我有PHP版本> 5.3.0這就是爲什麼它發生。如果有方法可以在不改變PHP版本的情況下解決這個問題(如果可能的話)。 – ankitr 2015-02-06 05:41:11

+0

您是否意味着低於生產服務器上的'5.3.0'? Yii 2需要PHP 5.4,所以你必須在開發和生產服務器上至少有這個版本才能使它工作。 – arogachev 2015-02-06 05:46:15

回答

1

重複好像你正在使用PHP的生產服務器上的舊版本(無namescaces支持)。檢查this related question

Yii 2 requires至少PHP 5.4,所以您必須在開發和生產服務器上至少有這個版本才能使它工作。

相關問題