您的位置:首页 > 理论基础 > 计算机网络

Apache下https服务的配置

2017-06-07 10:31 369 查看

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

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

214132021230522.key
214132021230522.pem
chain.pem
public.pem


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

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

LoadModule ssl_module modules/mod_ssl.so
Include conf/extra/httpd-ssl.conf


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

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

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文件中配置跳转

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteBase /
RewriteCond %{SERVER_PORT} !^443$
RewriteRule ^.*$ https://%{SERVER_NAME}%{REQUEST_URI} [L,R]
</IfModule>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  apache ssl https openssl