安裝thinkphp5後訪問public index.php 報錯require(/www/wwwroot/test3.com/public/../vendor/autoload.php)

根據網上教程,把thinkphp5版本通過git下載到項目裏,但是

檢查發現,vendor下的很多文件都不存在,爲啥?

於是去網上搜,網上建議是在linux下安裝composer

那麼什麼是composer呢,概念:

Composer的依賴關係管理風格,看上去更像Java的Maven。項目編譯和打包、依賴關係的解決都可以很輕鬆的實現。再也不用費神去尋找或者更新第三方庫,或者將他們集成到一起。這一切全部都可以交給Composer來完成。

(vendor目錄是放置composer類庫文件的)

所有cd切換到vendor目錄下,

然後運行composer install

但是報錯了,提示

[ErrorException]                                 
  putenv() has been disabled for security reasons 

因此需要把php.ini裏禁用掉這個函數的配置去除。(項目用的是php7.2,爲何也要把php5.6禁用纔可以?)

運行composer install 後,發現vendor目錄就有了丟失的文件了。

 

ps:

tp5的目錄結構,我們知道其中有兩個目錄是放置擴展類庫文件的。

extend是放置自定義或者其他類文件的。

vendor目錄是放置composer類庫文件的。

 

但是解決了這個vendor目錄問題後,又有新的問題,訪問報錯變成了

Parse error: syntax error, unexpected ':', expecting '{' in /www/wwwroot/test3.com/vendor/topthink/think-helper/src/helper.php on line 233

查看了helper.php 這個安裝composer後纔有的代碼,發現版本居然是很低的版本,聲明方法後還有多個:參數類型

這個需要php5.4之前的版本纔可以用。

但是thinkphp框架代碼又是用的高版本寫的,比如如果把5.6換成5.3版本,也會報錯,變成

Parse error: syntax error, unexpected T_OBJECT_OPERATOR in /www/wwwroot/test3.com/public/index.php on line 18

這可什麼情況啊。。。。。爲了先節省時間,後面再研究,直接去網上下個現成框架文件,下載一個壓縮包tp5.1,後傳到服務器的站點根目錄。

 

ThinkPHP5.0.24完整版下載地址

 

下載地址:https://www.thinkphp.cn/donate/download/id/1278.html

 

 

 

參考文檔:

https://www.kancloud.cn/manual/thinkphp5/118006

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章