PHP has encountered an Access Violation at XXXXXX 的解決方法
排錯(cuò)方法:
最好先查看系統(tǒng)日志文件,我們從日志中就可以發(fā)現(xiàn)很多問題。
我們就是因?yàn)閿?shù)據(jù)庫(kù)表出錯(cuò),修復(fù)一下就可以了,重啟下iis或重啟下服務(wù)器試試。
有客戶反映在美國(guó)VPS中出現(xiàn)該錯(cuò)誤:PHP has encountered an Access Violation at *
根據(jù)錯(cuò)誤提示,可以用以下辦法解決:
1、重啟IIS,重啟VPS主機(jī)即可。
2、關(guān)閉eaccelerator擴(kuò)展
找到php.ini
如果是我?guī)湍渲玫模话阍赾:/windows/php.ini
去掉
zend_extension_ts="C:\php\extensions\eaccelerator_win_xxx.dll"
eaccelerator.shm_size="16"
eaccelerator.cache_dir="c:\temp"
eaccelerator.enable="1"
eaccelerator.optimizer="1"
eaccelerator.check_mtime="1"
eaccelerator.debug="0"
eaccelerator.filter=""
eaccelerator.shm_max="0"
eaccelerator.shm_ttl="0"
eaccelerator.shm_prune_period="0"
eaccelerator.shm_only="0"
eaccelerator.compress="1"
eaccelerator.compress_level="9"
3、session_save_path 需要設(shè)定一個(gè)實(shí)際的物理路徑,并且該目錄需要everyone的所有權(quán)限,類似U主機(jī)的0777
4、您的內(nèi)存嚴(yán)重不足
5、ZendOptimizer和php的搭配不是很好,換個(gè)版本試試看
6、這種多屬于用win2003的用戶,他們?cè)趹?yīng)用池中設(shè)定了限制,比如多長(zhǎng)時(shí)間回收,最大使用內(nèi)存多少等等
技術(shù)部門推薦,重啟IIS即可,因?yàn)檫@個(gè)錯(cuò)誤出現(xiàn)的幾率非常低。
以下是補(bǔ)充一:
打開網(wǎng)頁(yè)發(fā)下如下錯(cuò)誤:PHP has encountered an Access Violation at
當(dāng)網(wǎng)站出現(xiàn)這個(gè)錯(cuò)誤時(shí)候,首先要檢查一下你的網(wǎng)站具體的錯(cuò)誤原因??赡芊祷氐耐粋€(gè)錯(cuò)誤但是出現(xiàn)的原因可能是不一樣的。比如感冒其實(shí)分很多種的哈!只有找到錯(cuò)誤的原因才能更好更快的解決錯(cuò)誤。
登陸你服務(wù)器打開系統(tǒng)日志。即在命令行中輸入eventvwr在彈出的對(duì)話框中點(diǎn)擊系統(tǒng)我在里面發(fā)現(xiàn)這個(gè)網(wǎng)站有一下錯(cuò)誤提示:
看到這個(gè)錯(cuò)誤錯(cuò)誤的原因可以斷定是:用戶在更改過匿名用戶訪問后出現(xiàn)的。
處理辦法:
1、重新建一個(gè)網(wǎng)站把主目錄的路徑指向原文件的目錄。
1、右鍵網(wǎng)站--屬性--目錄安全性--身份驗(yàn)證和訪問控制--編輯在用戶和密碼中輸入正確的用戶名密碼。
刷新網(wǎng)址一切正常。這個(gè)錯(cuò)誤是根據(jù)本機(jī)的實(shí)際情況處理的。你也要根據(jù)自己本機(jī)的具體錯(cuò)誤原因解決存在的問題。
你再看看以下幾點(diǎn).
1,是否zend所需的dll文件所在目錄給的權(quán)限不夠,必須有讀取和運(yùn)行的權(quán)限
2,是否使用的2003,設(shè)置過應(yīng)用池,比如池中限制了什么什么,調(diào)整一下再試試看,是否好了,呵呵
3,php.ini有兩個(gè)地方?jīng)]有設(shè)置,而且一些程序必須用到的
A
將;upload_tmp_dir該行的注釋符,即前面的分號(hào)“;”去掉,使該行在php.ini文檔中起作用。
upload_tmp_dir是用來定義上傳文件存放的臨時(shí)路徑,在這里你還可以給其定義一個(gè)絕對(duì)路徑,例如:
upload_tmp_dir = d:\upload 當(dāng)然,此時(shí)你的d:upload目錄必須有讀寫權(quán)限。
這里我設(shè)置為
upload_tmp_dir = c:\temp (因?yàn)榍懊娼⒘诉@個(gè)文件夾,我圖省事,呵呵)
B
出現(xiàn)這樣的錯(cuò)誤語(yǔ)句一般是因?yàn)槟愕膒hp.ini中關(guān)于session.save_path一項(xiàng)沒有設(shè)置好,解決的方法是將
session.save_path和session.cookie_path 設(shè)置置為
session_save_path = c:\temp
session.cookie_path = c:\temp
然后在c:\目錄下建立一個(gè)temp目錄,即可(前面我們的eaccelerarot正好用到,建立過這么一個(gè)文件
夾)
或者因?yàn)榘惭b了一些組件導(dǎo)致。都可以參考下。
最近我的windows2003服務(wù)器頻繁出現(xiàn)“PHP has encountered an Access Violation at ××××××”這樣的錯(cuò)誤,嘗試搜索了下,遇到這樣問題的人還真不少。我的原因可以鎖定在eaccelerator上面,因?yàn)橹皃hp運(yùn)行效率不大滿意,所以裝了eaccelerator加速,效果還是不錯(cuò)的,但隨著數(shù)據(jù)庫(kù)不斷加大,查詢和更新數(shù)據(jù)庫(kù)操作太頻繁,出現(xiàn)了“PHP has encountered an Access Violation at ××××××”這個(gè)錯(cuò)誤。網(wǎng)上的解決辦法無非就是去掉eaccelerator加速,這肯定不行,因?yàn)槲乙茫蔷桶此麄冋f的配置一下吧,什么臨時(shí)文件啊、session路徑啊,都改了,還是不行,于是就想是不是mysql版本的問題呢?看了下,發(fā)現(xiàn)dll的大小和修改日期還真不一致,于是把mysql下的dll覆蓋了從php里拷貝到系統(tǒng)目錄的dll,重啟iis,貌似好了,但是重啟服務(wù)器后又出現(xiàn)了,看來問題不在這,難道是iis應(yīng)用程序池的問題?
嘗試去除這個(gè)站點(diǎn)的所有限制,但是重啟服務(wù)器后發(fā)現(xiàn)又不行,還是這個(gè)錯(cuò)誤。觀察了下,只要重啟iis就能臨時(shí)解決這個(gè)問題,但是這不治本啊。仔細(xì)想了下,既然我的環(huán)境沒有問題,是在裝了eaccelerator后出現(xiàn)問題,那就從eaccelerator下手。仔細(xì)檢查每個(gè)配置,發(fā)現(xiàn)我配置的一點(diǎn)問題都沒有,無論eaccelerator的版本、php的版本,還是mysql的版本,都沒問題,權(quán)限也都?jí)?,php.ini配置也正確,但重啟iis就好使一陣子,于是把問題定位到應(yīng)用程序池。因?yàn)槲业膇is之前配置一點(diǎn)問題都沒有。最近看eaccelerator資料是共享內(nèi)存和硬盤,難道是iis應(yīng)用程序池和其他站點(diǎn)共享導(dǎo)致這個(gè)問題?于是重新建立應(yīng)用程序池,把這個(gè)應(yīng)用程序池只獨(dú)立分配給出問題的站點(diǎn),適當(dāng)減少對(duì)資源的限制,重啟iis,好使了,重啟服務(wù)器,也好使了,做了個(gè)簡(jiǎn)單的壓力測(cè)試,也好使了。
到此問題解決,留個(gè)日志紀(jì)念下,我一個(gè)禮拜才解決的這個(gè)鳥問題。
- Access的跨庫(kù)查詢 (圖)
- PHP連接access數(shù)據(jù)庫(kù)
- php靜態(tài)化頁(yè)面 htaccess寫法詳解(htaccess怎么寫?)
- You don’t have permission to access /index.php on.
- PHP連接Access數(shù)據(jù)庫(kù)的方法小結(jié)
- 教你如何在CI框架中使用 .htaccess 隱藏url中index.php
- Apache2.4.x版wampserver本地php服務(wù)器如何讓外網(wǎng)訪問及啟用.htaccess
- php結(jié)合ACCESS的跨庫(kù)查詢功能
相關(guān)文章
解決realplayer11中文正式版網(wǎng)頁(yè)右鍵亂碼問題embed_cn.dll
解決realplayer11中文正式版網(wǎng)頁(yè)右鍵亂碼問題embed_cn.dll...2007-11-11Windows Vista 零售版改 OEM 版本免激活的原理
Windows Vista 零售版改 OEM 版本免激活的原理...2007-02-02裝PhotoShop CS3之后,出現(xiàn)Bonjour的解決方法
裝PhotoShop CS3之后,出現(xiàn)Bonjour的解決方法...2007-04-04比較詳細(xì)的WinXP故障恢復(fù)控制臺(tái)完全手冊(cè)
Windows 故障恢復(fù)控制臺(tái)的功能是幫助基于 Windows 的計(jì)算機(jī)在未正確啟動(dòng)或根本無法啟動(dòng)時(shí)進(jìn)行恢復(fù)操作。2008-07-07設(shè)計(jì)軟件中的系統(tǒng)字體應(yīng)用小技巧
大家都知道,在操作系統(tǒng)的安裝目錄下有字體庫(kù),要使用種字體首先需要安裝,但是這會(huì)造成字體占用系統(tǒng)盤空間過多。設(shè)計(jì)使用的字體都不少,怎么說也有幾個(gè)G,很占資源,下面教大家一個(gè)稍微節(jié)省資源的方法。2008-04-04針對(duì)網(wǎng)頁(yè)制作者的網(wǎng)頁(yè)打開速度慢的解決方法集合
此文在優(yōu)化網(wǎng)頁(yè)打開速度及SEO方面,以網(wǎng)站瀏覽者,網(wǎng)站制作者,及服務(wù)器管理員的身份分別闡述了我們應(yīng)該如何做才能解決網(wǎng)頁(yè)打開慢的問題,向作者致敬2008-06-06