我目前正在試圖鉤到「sales_order_save_after」事件,但我不斷地得到當事件被觸發以下錯誤時:「法師註冊表項已經存在」觸發事件
Mage registry key "_singleton/Modulename/Orderobserver" already exists
現在的我已經檢查Orderobserver類是否正確命名,並匹配對xml中類的調用,但錯誤仍然存在。調用事件的xml看起來是這樣的:
<events>
<sales_order_save_after>
<observers>
<modulename>
<type>singleton</type>
<class>Modulename/Orderobserver</class>
<method>generateOrderFile</method>
</modulename>
</observers>
</sales_order_save_after>
</events>
該類被命名爲Companyname_Modulename_Model_Modulename_Orderobserver
。
類文件命名,並定位爲這樣:app/code/local/Companyname/Modulename/Model/Modulename/Orderobserver.php
有趣的是,也是在服務器日誌中記錄以下錯誤時出現錯誤:
client denied by server configuration:
/var/www/vhosts/path/to/subdomain/httpdocs/app/etc/local.xml
難道這是一個權限問題?
更新:
我已經看過了Magento的系統日誌,也被記錄以下錯誤:
Failed opening 'Mage/Retailpro/Model/Orderobserver.php' for inclusion (include_path='/var/www/path/to/subdomain/httpdocs/app/code/local:/var/www/path/to/subdomain/httpdocs/app/code/community:/var/www/path/to/subdomain/httpdocs/app/code/core:/var/www/path/to/subdomain/httpdocs/lib:.:') in /var/www/path/to/subdomain/httpdocs/lib/Varien/Autoload.php on line 93
被服務器配置拒絕的客戶端不相關。 Magento有一個內部檢查,它試圖通過HTTP請求local.xml,如果它可以訪問,則出於安全原因保存。 –