Win32平台下Apache ssl配置指南

2021-03-31 08:56:30 字數 3409 閱讀 7926

本文源自

http://raibledesigns.***/wiki/wiki.jsp?page=apachessl,並作了必要的修改,補充和簡化。在我的winxp+apache1.3.31下面測試通過

假定:你已經熟悉apache的安裝和配置

你對ssl安全連線的基本常識有一定了解

你對php有一定了解

不要混淆1.3和2.0版本的apache,不同的版本對應不同的mod_ssl。

修改httpd.conf的下列字段:

[將所有.my-server.dom換成你自己的網域名稱!]

注:如果你是在自己的pc上進行測試的話,可以隨意在hosts檔案中新增一行網域名稱和本地ip的紀錄,然後用這個網域名稱進行測試。關於hosts檔案知識,請自行了解。

重啟apache服務。

開啟 http://.my-server.dom:443/. 此時連線並沒有加密但代表你的apache可以正常使用443埠。

2.: 取得openssl 和 mod_ssl

從openssl壓縮包裡拷貝ssleay32.dll和libeay32.dllwinnt/system32. 大約有 70 % 的人因為沒有這樣做導致安裝失敗。

下列的說明來自 http://.apache-ssl./#faq.

注意:下列命令可以在cygwin裡面執行,也可以在解壓後的openssl-0.9.7d-win32.zip 執行(需要拷貝openssl.conf,如果執行不正確,在命令列後面加上-conf openssl.conf)

openssl req -new -out server.csr

這個語句建立乙個證書簽名請求和乙個私鑰。當系統提示"***mon name (eg, your websites domain name)", 給出精確的web伺服器名稱 (例如.my-server.dom)。如果和實際的名稱不符合,瀏覽器會報錯。

openssl rsa -in privkey.pem -out server.key

這個語句從私鑰移除 passphrase。server.key只能被 apache 和 administrator管理。刪除.rnd檔案,它可能被利用來攻擊私鑰。

openssl x509 -in server.csr -out server.crt -req -signkey server.key -days 365

這個語句建立自簽名的證書,你可以使用這個直到你從權威機構得到了乙個 真實證書。你可以擴大 -days 365 的引數,以避免一年以後過期。

建立乙個目錄apache/conf/ssl並拷貝server.keyserver.crt.對於linux建立兩個目錄ssl.keyssl.crt. 拷貝server.crtssl.crt;拷貝server.keyssl.key。

定位loadmodule指令在httpd.conf檔案的位置。增加下列指令:

loadmodule ssl_module modules/mod_ssl.so

在addmodule 指令部分的最後面加上

addmodule mod_ssl.c

從openssl原始檔裡拷貝

httpd.conf的最後增加以下指令

如果配置檔案裡ifdefine指令有效,則執行apache的時候要加上-d ssl引數。

注意: 使用多個虛擬主機的時候,必須用基於ip的配置,因為ssl需要配置乙個指定埠443,如果使用了基於名字的指令(對於所有埠)則apache伺服器會報錯

[error] virtualhost _default_:443 -- mixing * ports and non-* ports with a namevirtualhost address is not supported, proceeding with undefined results

啟動apache伺服器,如果順利的話你會看到

d:/apache>apache -d ssl

[tue oct 19 22:18:32 2004] [warn] loaded dso d:/apache/php/sapi/php4apache.dll u

ses plain apache 1.3 api, this module might crash under eapi! (please re***pile

it with -deapi)

apache/1.3.31 (win32) mod_ssl/2.8.19 openssl/0.9.7d php/4.3.6 running...

如果不能正確啟動,仔細看螢幕提示,你會從中得到解決的辦法。

如果一切順利,那麼,開啟ie,訪問https://localhost

Win32 平台 C socket 程式設計練習

使用c 實現win32平台的tcp ip網路程式設計,練習socket的使用。服務端 include include const unsigned short listen port 8700 int main int argc,char argv using namespace std word ...

可用於Win32平台的flex bison

雖然flex bison是linux世界的東東,有些情況下卻需要在windows上使用它們,自己用mingw編譯flex和bison又沒那個能力,只好找一些第三方的port,好在終於讓我找到了乙個,雖然比較老,但是用於學習編譯原理還是夠了 檔名url flex.exe bison.exe bison...

win32控制台 win32工程 MFC工程的區別

空專案 控制台 問2個問題即可。1.控制台 vs win32 mfc?嗯,有不有臉?有臉,選win32或mfc。沒有臉,選控制台。臉就是視窗,就是window.s 這個有臉 這個沒臉 控制台與win32 mfc 互動方式的不同,前者是cml 命令模式 後者是gui 使用者介面 2.mfc vs wi...