[转]配置Apache服务器支持https协议和SSL证书

建立网站时,特别是支付网站和电子商务网站,为了让客户信赖网站,让他们不把我们当做骗子,网站一般会安装SSL,我们访问网站时都是以https开头的,而不是以http开头的。下面是在windows环境下配置Apache服务器支持https协议和SSL证书。

1.配置Apache服务器支持openssl

配置Apache服务器支持https协议和SSL证书,最基本的要求是Apache包含openssl模块。在Windows下面单独安装openssl比较麻烦,最好还是安装那种绑定openssl的apache。我安装的是httpd-2.2.25-win32-x86-openssl-0.9.8y.msi,点击这里下载。

安装完成之后,在Apache安装目录的bin目录下可以看到 libeay32.dll、openssl.exe、ssleay32.dll 等三个文件,如下图所示:

再查看一下modules目录下是否存在 mod_ssl.so,查看 conf目录下是否存在openssl.cnf。

如果上面的都存在,可以确定Apache 能够支持 openssl 模块。

2.生成相关的证书

1). 使用DOS命令进入Apache bin目录

2). 设置openssl环境变量

使用DOS命令在bin目录下执行命令:set OPENSSL_CONF=..\conf\openssl.cnf,通过此命令设置openssl的环境变量,如果不执行此命令,后面的操作会报错。

3). 生成server.key

DOS下执行命令:openssl genrsa 4096 > server.key,执行了这个命令,会在bin目录下生成server.key。注释:这是使用128位的RSA算法生成的密钥,还可以使用其他的算法生成密钥,相关的用法可以使用搜索引擎搜索。4096是密钥的长度,这个值最好使用4096以上的值,必须是2的整数次方。

4). 生成未签署的server.csr

DOS命令下执行:openssl req -new -key server.key > server.csr,这个命令使用生成的密钥文件 server.key生成证书请求文件server.csr,执行这一命令之后,后面还要输入很多参数。

Country Name (2 letter code) [AU]:CN                                                                        ISO国家代码(只支持两位字符)
State or Province Name (full name) [Some-State]:Hu Bei                                         所在省份
Locality Name (eg, city) []:Wu Han                                                                               所在城市
Organization Name (eg, company) [Internet Widgits Pty Ltd]:Mark Company    公司名称
Organizational Unit Name (eg, section) []:IT                                                               组织名称
Common Name (e.g. server FQDN or YOUR name) []:www.phpmarker.com       申请证书的域名
Email Address []:[email protected]                                                                        管理员邮箱
Please enter the following ‘extra’ attributes
to be sent with your certificate request
A challenge password []:                                                                                                    交换密钥 可空
An optional company name []:                                                                                         可空

5). 签署服务器证书文件server.crt

DOS命令下执行:openssl req -x509 -days 365 -key server.key -in server.csr > server.crt,这个命令使用第三步和第四步生成的密钥和证书来生成证书server.crt,-days参数表示证书有效期,单位为天,x509表示生成的是X.509证书。

6). 查看证书详细信息

DOS下执行命令:openssl x509 -noout -text -in server.crt,这个命令可以查看证书的详细信息

执行上面所有的命令之后,在Apache的bin目录下生成了三个文件server.key、server.csr、server.crt。

注意:这样生成的证书只能作为测试使用,这种证书是不可信赖的,浏览器会给出警告的。如果想要真正使用,可以找相关提供证书的网站提供有关的证书。

3.配置Apache服务器载入openssl相关的配置文件

修改Apache conf目录下的httpd.conf配置文件找到 LoadModule ssl_module modules/mod_ssl.so,移除前面的#,找到 Include conf/extra/httpd-ssl.conf,移除前面的#

4.修改httpd-ssl.conf文件

httpd.conf文件载入的ssl配置文件为 conf/extra/httpd-ssl.conf,找到 <VirtualHost _default_:443>,修改里面的有关配置,我的配置如下:

# General setup for the virtual host
DocumentRoot “K:/wwwroot/mark1990.com”       网站路径
ServerName www.phpmarker.com:443                   网站域名
ServerAdmin [email protected]
ErrorLog “K:/Apache/logs/error.log”
TransferLog “K:/Apache/logs/access.log”

SSLCertificateFile “K:/Apache/conf/server.crt”
SSLCertificateKeyFile “K:/Apache/conf/server.key”
SSLCertificateChainFile “K:/Apache/conf/server.crt”

我是将 server.key、server.crt、server.csr移动到 conf 目录下

5.修改host文件,重启Apache服务器

进入 Windows\System32\drivers\etc目录下,向 hosts添加127.0.0.1 www.phpmarker.com,重新启动Apache服务器,访问https://www.phpmarker.com/,出现如下界面:

出现这种界面,因为我们自己制作的证书,不被浏览器所信赖。我们查看证书详细情况:

转载自:http://www.phpmarker.com/226.html

[转]配置Apache服务器支持https协议和SSL证书

时间: 2025-01-15 21:06:03

[转]配置Apache服务器支持https协议和SSL证书的相关文章

iOS开发 支持https请求以及ssl证书配置(转)

原文地址:http://blog.5ibc.net/p/100221.html 众所周知,苹果有言,从2017年开始,将屏蔽http的资源,强推https 楼主正好近日将http转为https,给还没动手的朋友分享一二 一.证书准备 1.证书转换 在服务器人员,给你发送的crt证书后,进到证书路径,执行下面语句 // openssl x509 -in 你的证书.crt -out 你的证书.cer -outform der 这样你就可以得到cer类型的证书了.双击,导入电脑. 2.证书放入工程 1

iOS中有关配置 Apache 服务器的详细步骤

配置 Apache 服务器 目的: 能够有一个测试的服务器,Apache 服务器是免费的! 为什么是 Apache 使用最广的 Web 服务器 Mac自带,只需要修改几个配置就可以,简单,快捷 有些特殊的服务器功能,Apache都能很好的支持 例如:HTTP PUT/DELETE 操作,知识补充涉及的 HTTPS 服务 准备工作 设置用户密码 配置 配置服务器的工作 在 Finder 中创建一个 Sites 的文件夹,直接创建在 /Users/apple(当前用户名)目录下 修改配置文件中的两个

配置Apache服务器

配置Apache服务器 一.目的 能够有一个测试的服务器,不是所有的特殊网络服务都能找到免费得! 二.为什么我们要用"Apache"? Apache是目前使用最广的web服务器 Mac自带,只需要修改几个配置就可以,简单.快捷 有些特殊的服务器功能,Apache都能很好的支持(例如:HTTP PUT/DELETE 操作,知识补充涉及的 HTTPS 服务) 三.准备工作 设置用户密码 四.配置服务器 配置服务器的工作 在Finder中创建一个"Sites"的文件夹,直

mac 配置apache 服务器 实现手机pc 端局域网传输

mac 配置apache 服务器 一.上一篇太low 了 每次下载大的文件都会失败,经过苦苦的百度,终于找到了解决方案,那就是配置apache, 二.开启我们的配置 1.开启apache 服务,mac是自带apa服务的,直接开启即可,注意一下命令都要使用 sudu root 权限 ? html sudo apachectl start Password: /System/Library/LaunchDaemons/org.apache.httpd.plist: service already l

Linux下安装配置Apache服务器

Linux下安装配置Apache服务器 1. 安装Apache [[email protected] ~]# yum –y install httpd 2. 启动Apache [[email protected] ~]# systemctl start httpd 3. 查看进程 [[email protected] ~]# systemctl status httpd httpd.service - The Apache HTTP Server Loaded: loaded (/usr/lib

Ubuntu上配置 Apache服务器和Tomcat服务器

                    Ubuntu上配置Apache服务器 1. 安装Apache sudo apt-get install apache2 Apache安装完成后,默认的网站根目录是 /var/www/html, 该目录下有一个index.html文件 (在浏览器中输入:127.0.0.1或localhost可以打开该页面) 2. 配置文件 Apache有两个配置文件: apache2.conf (/etc/apache2/apache2.conf); 和 000-defau

在腾讯云服务器centos7.5系统中lamp(centos7.5+apache+mysql+php)环境中安装ssl证书

# 在腾讯云服务器centos7.5系统中lamp(centos7.5+apache+mysql+php)环境中安装ssl证书 1.准备 yum install mod_ssl openssl 安装完毕后,会自动生成 /etc/httpd/conf.d/ssl.conf 文件 2.上传相关证书到服务器上的相关目录 (这里用的是腾讯云申请的免费证书) 证书: 2_www.some.cn.crt 3_www.some.cn.key 目录: /etc/pki/tls/certs/www.some.cr

Windows下配置Apache服务器并支持php

php环境的配置相对来说比较繁琐,网上教程大部分都是放一起说,总体感觉比较乱,其实Apache是一款通用的服务器软件,可以用来配置支持静态页面,php.Python.Java甚至asp等服务端语言,要把Apache理解成单独的服务器,并不一定和php搭档,只是和php配合是比较流行的一种组合方式,就比如lamp就是比较流行的网站架构,所以,首先我们来配置Apache,首先让服务器跑起来并能解析静态的html文件 首先我们去官网下载最新版本的Apache,首先来到首页:http://www.apa

如何配置Apache服务器

目的: 能够有一个测试的服务器,不是所有的特殊网络服务都能找到免费的! 为什么是 Apache 使用最广的 Web 服务器,IIS(微软 Intenet Infomation Server) Mac自带,只需要修改几个配置就可以,简单,快捷 有些特殊的服务器功能,Apache都能很好的支持 例如:HTTP PUT/DELETE 操作,知识补充涉及的 HTTPS 服务 准备工作 设置用户密码 配置 配置服务器的工作 在 Finder 中创建一个 Sites 的文件夹,直接创建在 /Users/ap