我有一個連接到遠程SQL Server的PHP腳本。 在命令行中以root身份,我可以調用freetds的命令: TSQL -H主機名-u用戶名 並把它連接好了,我可以運行查詢。來自PHP的Freetds SQL Server連接錯誤:權限?
我在/var/www/html/axis/public/test.php有一個PHP腳本 當我:sudo -u apache -s(將用戶從根改爲apache),然後運行我的PHP腳本命令行,它連接並運行查詢很棒。 但是,當從Web瀏覽器執行相同的腳本時,它失敗 - 瀏覽器返回一個DB連接錯誤。 Web瀏覽器能夠連接到任何地方,並呈現所有不需要SQL連接的網頁。
apache是運行httpd的用戶。我已經通過:ps aux |確認了這一點grep的阿帕奇
任何想法,爲什麼Apache可以執行的命令行PHP腳本很好,但是當瀏覽器嘗試連接到同樣的腳本,它失敗了呢?
感謝, 德里克
是的,我讀了一個。如上所述,我將用戶更改爲apache,並從commmand行執行PHP腳本就好了。這不是像在瀏覽器中直接執行相同的腳本一樣嗎? 連接字符串可能不那麼重要,因爲PHP腳本是作爲apache啓動的,但不是來自瀏覽器。他們都執行相同的腳本。 錯誤如下:SQLSTATE [HY000]無法連接:Adaptive Server不可用或不存在(嚴重性9) – Derrick