Windows下的Apache对于https服务的配置

  • A+
所属分类:网站建设

Windows下的Apache对于https服务的配置

1.下载证书,一般为四个文件

注意:服务器不一样,证书的数量可能不一样

1
2
3
4
214132021230522.key
214132021230522.pem
chain.pem
public.pem12345

2.在apache的配置文件(httpd.conf)中,对以下两句话取消注释

注意:第一条加载ssl,第二条引入配置文件

1
2
LoadModule ssl_module modules/mod_ssl.so (如果找不到请确认是否编译过 openssl 插件)
Include conf/extra/httpd-ssl.conf

3.配置conf/extra/httpd-ssl.conf文件,加入主机信息和证书路径

注意: 路径配置错误可能打不开服务器

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
Listen 443
SSLPassPhraseDialog  builtin
SSLSessionCache        "shmcb:/Apache24/logs/ssl_scache(512000)"
SSLSessionCacheTimeout  300
<VirtualHost _default_:443>
DocumentRoot "E:\web\public"
ServerName www.abc.com:443
ServerAdmin admin@example.com
SSLEngine on
SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL
SSLCertificateFile "C:\Apache24\cert\www\public.pem"
SSLCertificateKeyFile "C:\Apache24\cert\www\214132021230522.key"
SSLCertificateChainFile "C:\Apache24\cert\www\chain.pem"
<FilesMatch "\.(cgi|shtml|phtml|php)$">
    SSLOptions +StdEnvVars
</FilesMatch>
<Directory "/Apache24/cgi-bin">
    SSLOptions +StdEnvVars
</Directory>
BrowserMatch ".*MSIE.*" \
         nokeepalive ssl-unclean-shutdown \
         downgrade-1.0 force-response-1.0
#   Per-Server Logging:
#   The home of a custom SSL log file. Use this when you want a
#   compact non-error SSL logfile on a virtual host basis.
CustomLog "/Apache24/logs/ssl_request.log" \
          "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
</VirtualHost>

4.在网站根目录的.htaccess文件中配置跳转

1
2
3
4
5
6
<IfModule mod_rewrite.c>
    RewriteEngine on
    RewriteBase /
    RewriteCond %{SERVER_PORT} !^443$
    RewriteRule ^.*$ https://%{SERVER_NAME}%{REQUEST_URI} [L,R]
</IfModule>

5.重启 Apache。

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: