PHP has encountered an Access Violation at 7C94BD02解決方法
更新時間:2009年08月24日 15:25:25 作者:
PHP has encountered an Access Violation at 7C94BD02解決方法
解決方法如下:
php for windows的bug
參考:
第一種可能:
去掉 php中 eaccelerator 的擴展
這樣做能夠解決您的問題,不過可能會加重系統(tǒng)負擔
因為eaccelerator主要是為了節(jié)省系統(tǒng)資源的東西
具體做法是找到php.ini
如果是我?guī)湍渲玫模话阍赾:/php/php.ini或者 c:/winnt/php.ini 或者c:/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"
ea主要是在unix環(huán)境下開發(fā)的,但是作者忽略到windows實際上不像u主機那樣,是沒有u主機的那種內(nèi)存共享機制的
這個bug已經(jīng)提交給他們了,希望0.9.5能夠解決
當然,如果您的機器這個問題不嚴重,建議還是保留,ea是一塊非常優(yōu)秀的Php緩存+加速軟件
配合zo使用,將會降低系統(tǒng)負擔 50%-80%左右,提高負載能力、速度和效率 200%左右
第二種可能
session_save_path 需要設(shè)定一個實際的物理路徑,并且該目錄需要everyone的所有權(quán)限,類似U主機的0777
第三種可能
c:/winnt/temp 或者 c:/windows/temp
也需要everyone的所有權(quán)限,類似U主機的0777
第四種可能
您的內(nèi)存嚴重不足,查看一下,如果有問題,請加內(nèi)存,最好是一次加兩條
比如加1G內(nèi)存,最好是加2條一模一樣的512M。否則沒有啟用雙通道,效果也很一般
第五種可能
ZendOptimizer和php的搭配不是很好
換個版本試試看
目前比較穩(wěn)定的搭配是
php4.3.11+zo 2.5.10a
或者php4.4.1+zo 3.0 beta2
第六種可能
這種多屬于用win2003的用戶
他們在應用池中設(shè)定了限制
比如多長時間回收,最大使用內(nèi)存多少等等
這些設(shè)置勢必造成這個經(jīng)典的php錯誤
很多人說,是php版本的問題,其實不然,可以從四個地方來看這個問題
1,是否zend所需的dll文件所在目錄給的權(quán)限不夠,必須有讀取和運行的權(quán)限
2,是否使用的2003,設(shè)置過應用池,比如池中限制了什么什么,調(diào)整一下再試試看,是否好了,呵呵
3,php.ini有兩個地方?jīng)]有設(shè)置,而且一些程序必須用到的
A
將;upload_tmp_dir該行的注釋符,即前面的分號“;”去掉,使該行在php.ini文檔中起作用。upload_tmp_dir是用來定義上傳文件存放的臨時路徑,在這里你還可以給其定義一個絕對路徑,例如:upload_tmp_dir = d:upload 當然,此時你的d:upload目錄必須有讀寫權(quán)限。
這里我設(shè)置為
upload_tmp_dir = "c:\windows\temp\"
B
出現(xiàn)這樣的錯誤語句一般是因為你的php.ini中關(guān)于session.save_path一項沒有設(shè)置好,解決的方法是將session.save_path和session.cookie_path 設(shè)置置為
session.save_path = "c:\windows\temp\"
session.cookie_path = "c:\windows\temp\"
(這個設(shè)置不知道是否正確.沒試過.)
php for windows的bug
參考:
第一種可能:
去掉 php中 eaccelerator 的擴展
這樣做能夠解決您的問題,不過可能會加重系統(tǒng)負擔
因為eaccelerator主要是為了節(jié)省系統(tǒng)資源的東西
具體做法是找到php.ini
如果是我?guī)湍渲玫模话阍赾:/php/php.ini或者 c:/winnt/php.ini 或者c:/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"
ea主要是在unix環(huán)境下開發(fā)的,但是作者忽略到windows實際上不像u主機那樣,是沒有u主機的那種內(nèi)存共享機制的
這個bug已經(jīng)提交給他們了,希望0.9.5能夠解決
當然,如果您的機器這個問題不嚴重,建議還是保留,ea是一塊非常優(yōu)秀的Php緩存+加速軟件
配合zo使用,將會降低系統(tǒng)負擔 50%-80%左右,提高負載能力、速度和效率 200%左右
第二種可能
session_save_path 需要設(shè)定一個實際的物理路徑,并且該目錄需要everyone的所有權(quán)限,類似U主機的0777
第三種可能
c:/winnt/temp 或者 c:/windows/temp
也需要everyone的所有權(quán)限,類似U主機的0777
第四種可能
您的內(nèi)存嚴重不足,查看一下,如果有問題,請加內(nèi)存,最好是一次加兩條
比如加1G內(nèi)存,最好是加2條一模一樣的512M。否則沒有啟用雙通道,效果也很一般
第五種可能
ZendOptimizer和php的搭配不是很好
換個版本試試看
目前比較穩(wěn)定的搭配是
php4.3.11+zo 2.5.10a
或者php4.4.1+zo 3.0 beta2
第六種可能
這種多屬于用win2003的用戶
他們在應用池中設(shè)定了限制
比如多長時間回收,最大使用內(nèi)存多少等等
這些設(shè)置勢必造成這個經(jīng)典的php錯誤
很多人說,是php版本的問題,其實不然,可以從四個地方來看這個問題
1,是否zend所需的dll文件所在目錄給的權(quán)限不夠,必須有讀取和運行的權(quán)限
2,是否使用的2003,設(shè)置過應用池,比如池中限制了什么什么,調(diào)整一下再試試看,是否好了,呵呵
3,php.ini有兩個地方?jīng)]有設(shè)置,而且一些程序必須用到的
A
將;upload_tmp_dir該行的注釋符,即前面的分號“;”去掉,使該行在php.ini文檔中起作用。upload_tmp_dir是用來定義上傳文件存放的臨時路徑,在這里你還可以給其定義一個絕對路徑,例如:upload_tmp_dir = d:upload 當然,此時你的d:upload目錄必須有讀寫權(quán)限。
這里我設(shè)置為
upload_tmp_dir = "c:\windows\temp\"
B
出現(xiàn)這樣的錯誤語句一般是因為你的php.ini中關(guān)于session.save_path一項沒有設(shè)置好,解決的方法是將session.save_path和session.cookie_path 設(shè)置置為
session.save_path = "c:\windows\temp\"
session.cookie_path = "c:\windows\temp\"
(這個設(shè)置不知道是否正確.沒試過.)
相關(guān)文章
PHP 命令行工具 shell_exec, exec, passthru, system詳細使用介紹
PHP 為執(zhí)行外部命令提供大量函數(shù),其中包括 shell_exec()、exec()、passthru() 和 system()。這些命令是相似的,但為您運行的外部程序提供不同的界面。2011-09-09
使用PHP連接多種數(shù)據(jù)庫的實現(xiàn)代碼(mysql,access,sqlserver,Oracle)
我們今天為大家介紹的PHP連接數(shù)據(jù)庫的方法包括在MYSQL數(shù)據(jù)庫、ACCESS數(shù)據(jù)庫、MS SQL數(shù)據(jù)庫和Oracle數(shù)據(jù)庫中實現(xiàn)2016-12-12

