本文目錄一覽:
- 1、新手求助:關於apache啟動問題
- 2、php版本選擇問題.VC6和VC9的區別,TS和NTS如何選擇
- 3、如何在Windows7環境下安裝 PHP
- 4、編譯php擴展一定要用vc6嗎? – PHP內核源碼分析
- 5、PHP版本VC6和VC9,Non Thread Safe和Thread Safe的區別
- 6、Win2008r2 X64,IIS,用哪個版本的PHP,mysql,wincache性能好些
新手求助:關於apache啟動問題
Apache/PHP 無法啟動分兩種情況: 1.、Apache無法啟動,沒載入php也無法啟動 2、Apache可以啟動,但載入php後無法啟動 第一種情況多數是Apache配置問題,或者80埠被佔用 使用Apache的配置檢查:根據錯誤提示,糾正錯誤。 如果是80埠佔用,可以使用命令殺掉強佔80埠的進程 第二種多數是PHP編譯器的問題: 查看Apache錯誤日誌,有類似下面這些內容: httpd.exe: Syntax error on line 63 of D:/Apache2.2/conf/httpd.conf: Cannot load D:/php/php5apache2_4.dll into server: %1 \xb2\xbb\xca\xc7\xd3\xd0\xd0\xa7\xb5\xc4 Win32 \xd3\xa6\xd3\xc3\xb3\xcc\xd0\xf2\xa1\xa3 php5.5使用的編譯器是vc11,php5.4和php5.3的是vc9,php5.2是vc6。同時還要注意是x86版本,還是x64版本。目前只有php5.5提供x64版本,其他都只有x86版本。 apache.org下載的Apache都是vc6版本,否則就根據不同文件說明安裝不同的運行庫。 vc11運行庫x86/x64版本: vc10運行庫x86版本: vc10運行庫x64版本: vc9運行庫x86版本: vc9運行庫x64版本: 如果不清楚你的情況,可以安裝全部運行庫,再也不用為這個問題擔憂了。 如果Apache/PHP還無法啟動,那最可能是php5_module模塊的問題: 1、Apache2.0對應的PHP模塊為 php5apache2.dll 2、Apache2.2對應的PHP模塊為 php5apache2_2.dll 3、Apache2.4對應的PHP模塊為 php5apache2_4.dll 換句話說,根據php5_module模塊,可以知道當前版本php支持哪種Apache 所以,Apache/PHP的搭配有以下幾種情況: 1、php5.2支持Apache2.0和Apache2.2; 2、php5.3、php5.4同時支持Apache2.2和Apache2.4; 3、php5.5只支持Apache2.4 除非你自己手動編譯php5_module模塊,否則只能有以上3種選擇。 如果Apache/PHP還是無法啟動,檢查php配置(php.ini)是否存在,運行php.exe有沒有提示錯誤。根據錯誤提示,糾正錯誤。
php版本選擇問題.VC6和VC9的區別,TS和NTS如何選擇
TS是Thread Safety,代表線程安全,而NTS是None Thread Safe代表非線程安全。
Windows系統下才分線程安全與非線程安全,
windows + Apache + PHP(模塊) :使用線程安全版本。
windows + Apache + PHP(FastCGI) :使用非線程安全版本。
如果你的電腦是32位的, 那裝x86的版本,如果是64位的, 裝x64的版本!
一般來說不區分32位和64位,或者64位操作系統兼容32位的PHP,但是在某些操作系統上還是區分32位和64位的,例如windows 2008。
vc6和vc9是指vc運行庫的版本,你PHP版本標誌的是VC9,那麼運行的時候,需要安裝vc9
VC9 -是安裝運行使用 Visual Studio 2008 生成的 C++ 應用程序所必需的運行時組件。
這篇教程文章里提供700多個PHP版本下載。(700個PHP版本一鍵切換)
百度搜索這個文章標題:
PHP集成環境如何自定義PHP版本,同時運行多個php版本一鍵開啟模塊。
搜到的文章中,在文章的附件里有提供PHP歷史版本下載,差不多700多個PHP版本,最老和最新版本都包含了。如果你找不到,就找原文吧,因為你搜到的文章可能是被其他網站轉載的。
建議使用PHPWAMP綠色集成環境,700個PHP版本隨意切換,多版本同時運行。
(百度搜PHPWAMP有詳細的使用教程,能同時運行多個PHP版本,一鍵去埠等)
如何在Windows7環境下安裝 PHP
方法/步驟:
1、請先下載相關工具。根據自己系統下載相應版本,我下載的都是64位。
2、首先安裝PHPManagerForIIS,安裝成功後會IIS界面會多出PHPManager圖標,等待後續操作。
3、將下載的PHP 7.0.2 for win解壓並確定好要放置的位置。我這裡放到C盤根目錄下並改名為PHP 7.0.2。可根據自己需要進行調整。
4、將php.ini-development拷貝至C盤windows文件夾下,改名為php.ini;將extension_dir = “D:\PHP 7.0.2\ext”——實際對應EXT文件夾的位置。
5、此時重新打開IIS中的PHPManager管理界面,選擇安裝PHP。圖中是安裝後的效果,沒安裝時只有這個選項可用。安裝時選擇PHP文件夾下的PHP-CGI.exe文件即可。
6、此時可以嘗試運行PHP文件夾下的php可執行文件,如果沒有報錯就OK。如果報錯說VCRUNTIME140.DLL丟失,就是電腦缺少Visual C++Redistributable環境這時候就要用到vc_redist.x64(你的電腦也許是vc_redist.x86),微軟官方下載安全可靠…安裝完成後就OK了,可以開始你的PHP之旅了。
編譯php擴展一定要用vc6嗎? – PHP內核源碼分析
我個人理解是: 官方說 windows下的apache 要用VC6 我想應該使用了動態編譯(減少php.dll的大小)用VC寫的程序都應該知道,有個動態跟靜態連接那麼應該是apache2.dll這個文件 肯能需要VC6的一些lib庫支持??畢竟VC6是經典的C++編譯連接器當然,你如果編譯或者使用C++或者使用delphi等語言為PHP增加擴展功能肯定不限制你用什麼編譯器 因為如果你用VS2010這些編譯的話 只要設置成靜態的 還有取消微軟的託管完全可以兼容的? ?當然,如果用delphi編寫 肯能需要一些回調聲明??以為C++跟delphi不是同個聲明數據調用完後 進行內存數據銷毀的話肯能有區別以上完全個人理解 認為不當的 就當道聽途說 不用太當真
PHP版本VC6和VC9,Non Thread Safe和Thread Safe的區別
vc就是常說的microsoft visual c++ redistributable package,vc6和9代表的不同版本,6應該是vc++6.0,9是vc++2008,10是vc++2010,11是vc++2012,如果用相應的版本的visual studio編譯的,同時還需要運行庫的支持,不然就會報常見的缺少vcr***.dll錯誤,也就是說vc6版本需要安裝visual c++ 6.0 運行庫,vc9需要安裝microsoft visual c++ 2008 redistributable package,現在主流是vc9以上了。至於線程安全,官網是這樣說的
Which version do I choose?
IIS
If you are using PHP as FastCGI with IIS you should use the Non-Thread Safe (NTS) versions of PHP.
Apache
Please use the Apache builds provided byApache Lounge. They also provide VC11 builds of Apache for x86 and x64. We use their binaries to build the Apache SAPIs.
If you are using PHP with Apache 1 or Apache2 from apache.org (not recommended) you need to use the older VC6 versions of PHP compiled with the legacy Visual Studio 6 compiler. Do NOTuse VC9+ versions of PHP with the apache.org binaries.
With Apache you have to use the Thread Safe (TS) versions of PHP.
VC9 and VC11
More recent versions of PHP are built with VC9 or VC11 (Visual Studio 2008 and 2012 compiler respectively) and include improvements in performance and stability.
The VC9 builds require you to have theVisual C++ Redistributable for Visual Studio 2008 SP1 x86 or x64 installed.
The VC11 builds require to have the Visual C++ Redistributable for Visual Studio 2012×86 or x64 installed.
TS and NTS
TS refers to multithread capable builds.NTS refers to single thread only builds. Use case for TS binaries involves interaction with a multithreaded SAPI and PHP loaded as a module into a web server. For NTSbinaries the widespread use case is interaction with a web server through the FastCGI protocol, utilizing no multithreading (but also for example CLI).
Win2008r2 X64,IIS,用哪個版本的PHP,mysql,wincache性能好些
VC6版本是使用Visual Studio 6編譯器編譯的,如果你的PHP是用Apache來架設的,那你就選擇VC6版本。
VC9版本是使用Visual Studio 2008編譯器編譯的,如果你的PHP是用IIS來架設的,那你就選擇VC9版本。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/278125.html