win7 64位Apache http server+PHP配置

來源:互聯網
上載者:User

標籤:c   style   blog   code   a   tar   

 

1、首先下載apache http server(我本來是想在官網下載,但是找半天也沒找到,於是就在網上下了一個老版本的)我是在這個網址下載的:http://download.csdn.net/download/chang87812/7175961

下載PHP:同樣的我開始在官網下載了最新版的(網址:(http://windows.php.net/downloads/releases/)

但是後來配置好後又有問題。

問題是:httpd: Syntax error on line 129 of D:/PHP/server/httpd-2.2-x64/conf/httpd.conf: Cannot load D:/ApaServ/php/php5apache2_4.dll into server: \xd5\xd2\xb2\xbb\xb5\xbd\xd6\xb8\xb6\xa8\xb5\xc4\xc4\xa3\xbf\xe9\xa1\xa3.

原因是:此檔案要跟版本對應,否則就不能載入。後來又出現一次,也是這個提示,只是換成了php5.4.8 在174行,“D:\ApaServ\php\php5apache2_4.dll”的啟用上下文產生失敗。 找不到依存性程式集 vcredist_x86.exe。後來解決方案是: 把 vcredist_x86.exe重新安裝了一次,這個是我在安裝apache之前安裝的,可能裡面的檔案被改寫了,所以找不到。我也是看了網上:在類似C:\Program Files\Microsoft Visual Studio 8\VC\redi st\Debug_NonRedist\x86\Microsoft.VC80.DebugCRT 下找到了下列檔案:
msvcm80d.dll msvcp80d.dll msvcr80d.dll Microsoft.VC80.DebugCRT.manifest 把這幾個檔案拷貝到目標機器上,與運行程式同一檔案夾或放到system32下,就可以正確運行了。
其他release版、MFC程式什麼的都是拷redist下相應檔案夾下的檔案就可以了,檔案夾後都有標識!

這個提示後,才想到的。後來安裝php5.5的時候又出現這個錯誤提示,我開始是按自己的理解,安裝了VC++2010運行庫,但無論怎麼調試都是這個錯誤,後來我就從網上下載最高版本的VC++2012運行庫,一下就成功。(此原因是我在網上查到的,我並沒有實踐,我不想再裝VC++2012運行庫了!!!)

於是我就又在網上找到了一個老版本的PHP,下載網址:http://download.csdn.net/download/tonyyxm/5428271

二、安裝Apache      

1、64位的Apache不同於32位打包成exe檔案可直接安裝,先把httpd-2.2.19-win64解壓到E:/server/ apache- httpd-2.2.19-win64/(/*E為具體伺服器檔案所在盤盤符*/)        

2、以管理員身份運行 命令提示字元(開始-程式-附件),進入E:/server/apache-httpd-2.2.19-win64/

3、執行httpd -k install

此處出現問題:failed to open the winNT service manager

解決:原來是軟體安裝時與windows7的“使用者賬戶控制”(UAC)衝突,只要先關閉UAC(控制台-使用者賬戶和家長監護服務-系統和安全-控制中心,裡面有“更改使用者賬戶控制設定”,改成從不通知,完成後會提示重啟,此時需要重啟一下)再安裝就沒問題了,安裝完後可以再修改回來。

 

4、修改httpd.conf,這裡跟32位系統裡配置一樣        

(1)修改ServerRoot "E:/server/httpd-2.2.19-win64/"        

(2) 往下會看到apache開啟的功能模組如:#LoadModule vhost_alias_module modules/mod_vhost_alias.so          

 模組其後添加:                  

LoadModule php5_module "E:/Server/php-5.3.6-Win32-VC9-x64/php5apache2_2.dll"                  

PHPiniDir "E:/Server/php-5.3.6-Win32-VC9-x64/"                  

AddType application/x-httpd-php .html .htm .php          

(3)繼續往下,找到行DocumentRoot "E:/Code/PHP/"設定網頁檔案目錄 此行修改要與行# This should be changed to whatever you set DocumentRoot to後的<Directory "E:/Code/PHP/">目錄設定相對應

 5、再次在 命令提示字元 執行httpd -k start 沒有錯誤即apache服務啟動成功

6、關閉Apache伺服器:執行httpd -k shutdown

三、配置PHP      

1、如上提到,本人php目錄解壓到E:/Server/php-5.3.6-Win32-VC9-x64/即對應上步在Apache中設定的LoadModule位置      

2、將php.ini-development修改成php.ini      

3、開啟php.ini,找到extension_dir,修改其值為E:/Server/php-5.3.6-Win32-VC9-x64/ext/即php檔案所在目錄下/ext      

4、找到擴充列表,;extension=php_gd2.dll、;extension=php_mysql.dll、 ;extension=php_mysqli.dll前的“;”去掉即為開啟該擴充,當然以上擴充為舉例之用,可根據功能雖求不同開啟相應擴充      

5、(可選)date.timezone的值設為Asia/Shanghai即date.timezone =Asia/Shanghai      

6、在E:/Code/PHP/下建立一test.php檔案,內容為            

<?php                  

  phpinfo();            

?>

然後在瀏覽器地址欄中輸入http://localhost/test.php

上面的配置過程是別人的:我配好後出現以下兩個問題:

1、httpd: Could not reliably determine the server‘s fully qualified

解決:前言:apache雖然能運行,但是看見error.log中有httpd.exe: Could not reliably determine the server‘s fully qualified domain name, using 192.168. x. x for ServerName這個錯誤,想看看是否有其他佔用了80連接埠
開始--運行--cmd 進入命令提示字元 輸入netstat -ano 即可看到所有串連的PID 之後在工作管理員中找到這個PID所對應的程式如果工作管理員中沒有PID這一項,可以在工作管理員中選"查看"-"選擇列"
經常,我們在啟動應用的時候發現系統需要的連接埠被別的程式佔用,如何知道誰佔有了我們需要的連接埠,很多人都比較頭疼,下面就介紹一種非常簡單的方法,希望對大家有用
假如我們需要確定誰佔用了我們的80連接埠
1、Windows平台
在windows命令列視窗下執行:
C:\>netstat -aon|findstr "80"
TCP     127.0.0.1:80         0.0.0.0:0               LISTENING       2448
看到了嗎,連接埠被進程號為2448的進程佔用,繼續執行下面命令:
C:\>tasklist|findstr "2448"
thread.exe                     2016 Console                 0     16,064 K
很清楚吧,thread佔用了你的連接埠,Kill it
如果第二步查不到,那就開工作管理員,看哪個進程是2448,然後殺之即可。
如果需要查看其他連接埠。把 80 改掉即可
補充:原來出現這個錯誤原因(httpd.exe: Could not reliably determine the server‘s fully qualified domain name, using 192.168.1.111 for ServerName)是因為DNS沒配置好. 如果不想配置DNS, 就在httpd.conf , 在最前加入 ServerName localhost:80 即可

2、“(OS 10013)以一種存取權限不允許的方式做了一個訪問通訊端的嘗試。 : make_sock: could not bind to address 0.0.0.0:80”

解決:改連接埠,開啟.\apache\conf\httpd.conf,將其中的所有80改為81,儲存後重新啟動apache的,OK。

改完連接埠就要以下面網址訪問:http://localhost:81/test.php

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.