一開始建立就有一個home模塊
再建立一個Data模塊php
定時任務在/Application/Common/Conf/crons.php中,這裏不講怎麼建立定時任務。json
Data模塊的配置文件路徑以下
/Application/Data/Conf/config.php微信
定時任務中的邏輯是會調用Data模塊的代碼,居然沒法讀取到Data中的配置文件,或者是4次有1次能讀到配置,這個太不穩定了也不正常。 測試
若是使用Data模塊的接口調用,就能夠讀到配置文件。spa
對我產生的影響:
1. 微信模板消息是讀取Data下的自定義的json模板,使用Data測試接口模板消息正常發送,上線後在定時任務中就不正常。
2. 定時任務中沒法讀取到Data中config.php的一些固定數據,這個發現比較及時。日誌
最終懷疑到定時任務讀取路徑上,輸出日誌後果真是這樣
後來打日誌追蹤配置文件路徑,使用MODULE_PATH輸出路徑
20%的機率輸出
/Application/Data/Conf/config.php
80%的機率輸出
/Application/Home/Conf/config.php接口
這太TM坑了。io
結論:
若是不用定時任務使用Data模塊中接口去讀Data模塊的配置,就沒有問題。
使用定時任務各類路徑和配置會以默認模塊Home爲準。
解決辦法一:使用絕對路徑
解決辦法二:將配置寫入全局的配置文件中 /Application/Common/Conf中模板
若是在非默認模塊Home下有自定義的json模板文件等,能夠使用方法一配置