解決辦法之一:
把左下角的SSL鉤上了,如果你沒有用證書,就把那個去掉,有的朋友去掉就可以了。也可能再裝了證書鉤上SSL也可以用了。
解決辦法之二:
看了說的把SSL勾掉的辦法,也解決不了。后來就去查卡巴,也沒看到有什么設置影響;用APM自帶的一個解決軟件沖突的功能,執行后問題依然。懷疑是不是APM所在的文件夾的父文件夾是中文的,對它有影響,刪掉重建,還是不行。 檢查操作系統“設置 - 管理工具 - 服務” 里面的選項,有一個Telnet選項被禁止了,這才想起來安裝XP之后,擔心安全問題,所以把遠程協作給關掉了,估計因此把Telnet的功能就給禁止了,所以現在趕緊把它設置成手動開啟。 開啟Telnet后,再啟動APMServ5.2.0,也可能就正常。
解決辦法之三:
建議不要經常加載和卸載今天在調試添加虛擬主機和虛擬目錄時,忽然發現重啟APMServ有問題,總是不能加載Apache,覺得很奇怪,因為昨天以及解決了這個問題我以為。在論壇里看了一下,有建議說不要頻繁重啟APMAerv,于是卸載,關機。過了一會兒開機,首先開APMServ,發現正常了。而且,發現昨天設置的Telnet,其實現在根本尚未手動啟動。
得出結論:
1、昨天帖子不準確,雖然昨天調整TELNET與啟動正常有關系,但今天沒關系,原因不清楚;(今天把遠程協作打開了,可能有關聯)
2、APMServ頻繁啟動關閉的確不太好,容易造成加載不正常。
解決辦法之四:
是不是安裝在了帶中文的目錄了,這個程序不能使用中文目錄的。如果是,刪掉重新裝一下。
解決辦法之五:
1、可以嘗試將PHP的安裝目錄設置為系統的環境變量:右鍵點擊“我的電腦”-“屬性”-“高級”-“環境變量”-“系統變量”,修改Path,加上“D:\APMServ5.2.6\PHP;D:\APMServ5.2.6\PHP\ext”路徑。
注意用英文分號;進行分隔,同時上面的“D:\APMServ5.2.6\PHP;D:\APMServ5.2.6\PHP\ext”是我的安裝路徑,記得換成你的路徑。
2、或者把需要用到的dll復制到操作系統的System32文件夾中。即把PHP和PHP\ext下面的.dll文件拷到C:\WINDOWS\system32文件夾中。
解決辦法之六:
上面5個辦法還是解決不了,而php.ini里的extension_dir配置是正確的,還是不行的話,可能是以前在本機安裝過PHP,有一些殘留文件,windows PATH變量或拷貝到C:\WINDOWS\system32下的dll文件被Apache優先加載了,而沒有加載應該加載的APACHE目錄中的dll,
注意:windows加載dll文件的順序是按系統環境變量PATH里指定的目錄的先后來的,一般是%SystemRoot%\system32;%SystemRoot%,在安裝Apache+PHP的時候如果出現“Unable to load dynamic library”錯誤,但配置文件又是正確的情況下,一定要注意這些目錄下有沒有當前PHP版本需要使用的dll不同版本的同名文件。
解決辦法之七:
按上面6個辦法改了又試,試了又改,也弄了n次仍然不行,點擊"Apache設置(A)-查看運行日志(E)",發現下面的文字:
第一種提示:
PHP Warning: [eAccelerator] This build of "eAccelerator" was compiled for PHP version 5.2.6. Rebuild it for your PHP version (5.2.9) or download precompiled binaries.\n in Unknown on line 0
PHP Fatal error: Unable to start eAccelerator module in Unknown on line 0
第二種提示:
********************************************************************************************
APMServ最近一次啟動、運行、停止過程中的Apache通知[notice]、提醒[warn]、錯誤[error]日志如下:
********************************************************************************************
[Tue Jan 01 01:42:31 2002] [warn] pid file D:/APMServ5.2.6/Apache/logs/httpd.pid overwritten -- Unclean shutdown of previous Apache run?
[Tue Jan 01 01:42:32 2002] [notice] Apache/2.2.9 (APMServ) PHP/5.2.6 configured -- resuming normal operations
[Tue Jan 01 01:42:32 2002] [notice] Server built: Jun 13 2008 04:04:59
[Tue Jan 01 01:42:32 2002] [notice] Parent: Created child process 3564
Failed loading D:/APMServ5.2.6/zend/eAccelerator/eAccelerator.dll
[Tue Jan 01 01:42:32 2002] [notice] Child 3564: Child process is running
[Tue Jan 01 01:42:32 2002] [notice] Child 3564: Acquired the start mutex.
[Tue Jan 01 01:42:32 2002] [notice] Child 3564: Starting 500 worker threads.
[Tue Jan 01 01:42:32 2002] [notice] Child 3564: Starting thread to listen on port 80.
就拿第一種來說,反正兩種都是版本過低,由上面的日志可以清楚的判斷到是php版本的原因。由于PHP version (5.2.6) 不會改動,所以問題就是eAccelerator編譯時的版本要用5.2.9了。
打開D:\APMServ5.2.6\Zend\eAccelerator文件夾,馬上可以看到eAccelerator.dll這個文件,再在文件夾D:\APMServ5.2.6\PHP下面搜索一下包含eAccelerator的關鍵字
可以發現只有php.ini里面包含了eAccelerator.dll的引用。現在唯一的關鍵就是下載eAccelerator的5.2.9版本了,
找了好久終于找到下載地址了:http://www.sitebuddy.com/PHP/Accelerators/eAccelerator_windows_binaries_builds,注意下載eAccelerator 0953 for PHP 5.2.9,不要下錯了文件,下來后(如果是第二種記得下載eAccelerator 0.9.6.1 for PHP 5.2.14 None Tread Safe (NTS)
直接放到D:\APMServ5.2.6\Zend\eAccelerator文件夾中,再到php.ini文件中把
[eaccelerator]
zend_extension_ts="D:/APMServ5.2.6/zend/eAccelerator/eAccelerator.dll"
改為
[eaccelerator]
zend_extension_ts="D:/APMServ5.2.6/zend/eAccelerator/eAccelerator0953_5.2.9.dll"
就可以了(如果是第二種記得也改對應的名稱)
注意:上面的提到的相關路徑依據你自己解壓AMPServ時設置的路徑,使用的系統是windows 2003 server。
----------- 我是可愛的分隔線 -----------
對了,APMServ5.2.6默認的mysql安裝后root帳號的密碼為空,這樣很不安全,需要改一下。
開始 - 運行 - 輸入cmd運行
D:\APMServ5.2.6\MySQL5.1\bin> mysql -u root mysql
mysql> UPDATE user SET Password=PASSWORD('新密碼') WHERE user='root';
mysql> FLUSH PRIVILEGES;
本文鏈接:http://gujaratreit.com/xinwenzhongxin/663.html
|