簡體   English   中英

什么會導致Web服務器找不到XML文件?

[英]What can cause a web server to not find an XML file?

我有一個PHP腳本,該腳本從xml文件讀取以生成表。 它要做的第一件事是檢查以確保文件存在。

$path = getcwd();
if(file_exists($path.'\inc\php\kbs.xml')){
    $kbs = simplexml_load_file($path.'\inc\php\kbs.xml');
} else {
    echo "Error: No KB file found";
}

由於某種原因,它間歇性地找不到文件。 我嘗試刪除file_exists一起檢查(因為我知道該文件確實存在),但是它有時仍不加載該文件。 我可以刷新頁面,每10個頁面刷新7次,但不會加載,但有時可以。

在開發過程中,我從未遇到過這個問題,但是一旦投入生產(現在可能已有200個用戶使用),它就開始發生。

我該如何解決此問題? (在IIS上運行的PHP 5.2.14)

編輯:錯誤日志失敗時給我以下消息:

Notice: Undefined variable: kbs in <the path> on line 16
Notice: Trying to get property of non-object in <the path> on line 16
Warning: Invalid argument supplied for foreach() in <the path> on line 16

第16行是第一次訪問變量$kbs 顯然,如果找不到該文件,則不會設置$kbs

請使用絕對路徑,相對路徑會使事情變得一團糟。

位置相對於PHP嗎? 權限是否允許Web服務器看到它?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM