欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

訪問(wèn)php時(shí)提示內(nèi)存位置訪問(wèn)無(wú)效的解決辦法和思路分析

 更新時(shí)間:2011年08月02日 10:59:21   作者:  
新配置的PHP環(huán)境,或者剛做過(guò)配置改動(dòng),比如新加載的DLL擴(kuò)展,訪問(wèn)頁(yè)面,可能會(huì)出現(xiàn)“內(nèi)存位置訪問(wèn)無(wú)效?!钡腻e(cuò)誤。主要原因是DLL擴(kuò)展加載失敗。
我們就需要找到是哪一個(gè)DLL文件加載出現(xiàn)了問(wèn)題。排查方法是:

將php.ini中 display_startup_errors = Off 改為display_startup_errors = On 。
這是訪問(wèn)php頁(yè)面,服務(wù)器上會(huì)彈出php錯(cuò)誤的提示對(duì)話框,你就可以明確看到是哪一個(gè)dll文件加載失敗,有時(shí)會(huì)有多個(gè)dll文件加載失敗,需要你先分號(hào)(;)注釋掉php.ini中提示那個(gè)dll后繼續(xù)訪問(wèn)如此反復(fù)排查。
把出問(wèn)題的dll都用分號(hào)(;)注釋掉后,php就可以正常運(yùn)行了。

如果加載失敗的dll是你必須使用的擴(kuò)展庫(kù)文件,那么就要從版本是否對(duì)應(yīng)、文件是否齊全、文件是否已損壞等等方面去排查加載失敗的原因了。不同的擴(kuò)展具有不同的情況,這里就無(wú)法一一羅列了,記住:搜索引擎是你最好的幫手,針對(duì)單個(gè)dll去搜索解決的方法吧。

另外:新版本的Windows版本PHP,在出現(xiàn)錯(cuò)誤時(shí),會(huì)將詳細(xì)的錯(cuò)誤信息自動(dòng)存儲(chǔ)到Windows系統(tǒng)的TEMP臨時(shí)目錄,文件名為:php-errors.log。在Windows2003系統(tǒng)中路徑一般是:C:\WINDOWS\Temp\php-errors.log。用記事本打開(kāi)這個(gè)文件,就可以看到詳細(xì)的php錯(cuò)誤記錄了。

此處往下是從網(wǎng)上轉(zhuǎn)載的內(nèi)容:

客戶一個(gè)PHP網(wǎng)站每天早上都訪問(wèn)不了,提示“內(nèi)存位置訪問(wèn)無(wú)效”,重啟IIS無(wú)效,要重啟服務(wù)器才能暫時(shí)正常,過(guò)一會(huì)兒又是出現(xiàn)這個(gè)“內(nèi)存位置訪問(wèn)無(wú)效”的提示。
到百度上搜索了一下,找到解決方法,在此記錄一下:
打開(kāi)c:\windows\php.ini文件,搜索下面的字段
extension=php_exif.dll
找到后在前面加一個(gè);分號(hào)注釋掉
如下:
;extension=php_exif.dll
保存重啟iis再訪問(wèn)一下php文件看看能否打開(kāi)了,沒(méi)有出現(xiàn)內(nèi)存位置訪問(wèn)無(wú)效了。

以上操作實(shí)際上是把php_exif.dll組件禁用了。如果一定要用到這個(gè)組件可以試試下面這個(gè)方法:
一、將IIS的錯(cuò)誤顯示打開(kāi),未發(fā)現(xiàn)錯(cuò)誤原因
二、檢查IIS擴(kuò)展,ISAPI、php.ini與Mysql配置以及相應(yīng)的安裝目錄ACLs權(quán)限,均無(wú)誤。
三、回收IIS進(jìn)程,錯(cuò)誤仍然出現(xiàn)”內(nèi)存位置訪問(wèn)無(wú)效”….
四、將php.ini中 display_startup_errors = On 打開(kāi),問(wèn)題所在終于發(fā)現(xiàn)了… (注:如果將php.ini的display_startup_errors打開(kāi),如果php有錯(cuò)誤出理,就會(huì)提示,而且 在事件查看器中有記錄。如果設(shè)置為display_startup_errors = Off,則不會(huì)有任何提示)
五、Warning Cannot load module ‘SQLite' because required module ‘pdo' is no loaded
六、根據(jù)以上錯(cuò)誤提示,解決辦法就很簡(jiǎn)單了,因?yàn)榧虞dphp_sqlite.dll時(shí)未加載到php_pdo.dll文件,所以運(yùn)行phpinfo()函數(shù)時(shí)提示內(nèi)存 位置訪問(wèn)無(wú)效。
找到php.ini配置文件,然后去掉”;extension=php_pdo.dll”前面的分號(hào),extension=php_sqlite.dll
然后再回收一下IIS應(yīng)用程序池進(jìn)程,問(wèn)題徹底解決….

相關(guān)文章

最新評(píng)論