Apache+PHP配置HTTPS(Windows Server 2016 x64)

更新时间:2024-06-22 11:06:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

下载地址

PHP:http://windows.php.net/download#Releases

选择x64 Thread Safe,Zip格式

Apache:https://www.apachelounge.com/download/

https://aka.ms/vs/15/release/VC_redist.x64.exe

(VC库,下载完后直接双击安装)

存储结构

C:\\NJ

\\Apache \\PHP \\MySQL \\Web

\\WordPress

PHP

1.打开PHP目录下的\文件,另存为\。

2. 修改插件目录(搜索关键词: extension_dir) extension_dir = \

Apache

P:每个需要编写的配置文件,在操作前,都先将该配置文件内的所有\替换为\

1.打开\,修改参数\、\。(若没有注册ServerName处域名可填写IP,若填写局域网IP则只有局域网用户可访问。)

2. 修改参数\(网站的根目录) DocumentRoot \

3.找到LoadModule区域,添加如下信息:(注意查看PHP目录下的dll文件版本)

LoadModule php7_module C:\\NJ\\PHP\\php7apache2_4.dll PHPIniDir \

4. 修改默认检索index.html为index.php。(搜索关键词:DirectoryIndex)

5. 管理员身份打开CMD,cd至bin目录:cd C:\\NJ\\Apache\\bin

键入命令检测配置文件:httpd.exe -t 如果报错,请百度错误信息。

键入命令安装服务:httpd.exe -k install -n Apache

6. 打开控制面板→系统和安全→Windows防火墙→允许应用通过Windows防火墙,点击允许其他应用,添加bin目录下的httpd.exe

7.打开\程序,运行服务。

8. 在\目录下新建文件\并写入如下内容

9.打开浏览器,输入http://localhost/,查看是否正常显示PHP版本信息。

Certbot证书申请

官网: https://certbot.eff.org/

官方不支持Windows系统,网上可能有第三方工具,可以尝试,但不建议(出于安全考虑)。 所以下面我选择在Debian上进行证书申请,申请完后,将证书文件提取出来,拷贝至WindowsServer服务器。(其他Linux系统流程类似,具体指令可以在Certbot官网首页选择对应系统,查看教程参考)

采用这种方法是非常非常非常蛋疼的,因为证书只有三个月,到期后,只有Linux系统下才能自动续期,就是说又需要弄台Linux去重新弄一遍证书。

所以此小结内容仅供参考学习(娱乐),有需求的可以去搜索其他证书资源。

Debian 9.0 64位

1. 进入Debian,更新系统及软件(可以跳过) apt-get update && apt-get upgrade

一路按\

遇到列表选项,就选第一个\

2. 按照Certbot官网的说明输入指令

sudo apt-get install python-certbot-apache -t stretch-backports

如果报错上述错误,则输入下列指令

sudo apt-get install python-certbot-apache

3. 在浏览器输入你的服务器地址,查看Apache是否成功启动。

从页面中,可以获得网页根目录是\。等会验证时需要填写。

4. 按照Certbot官网的说明输入指令

sudo certbot --authenticator webroot --installer apache

填写证书相关信息

选择许可方式

5. 输入下列指令(文件地址及文件名来自上面截图中)

cat /etc/apache2/sites-available/000-default-le-ssl.conf

6. 将证书复制到网站根目录,方便下载

cp /etc/letsencrypt/live/mambas.cn/{fullchain.pem,privkey.pem} /var/www/html/

7. 用浏览器或下载工具下载证书文件。

下载地址格式为:\服务器域名或IP地址/fullchain.pem\

这两个.pem文件就是证书文件,可以直接拖到Apache那使用。如果非常非常非常.crt文件,那就继续看吧。

1. 打开腾讯云控制台(没错,你需要一个腾讯云账号,并且完成实名认证!!!)

2.点击\上传证书\,复制\内的所有内容到\证书\栏,复制\内的所有内容到\私钥\栏,点击\上传\

3. 点击\下载\

4. 下载下来的Zip压缩包内包含三个文件夹,分别包含Apache、IIS、Nginx所对应的证书格式

SSL

1. 将得到的证书文件复制到\

2. 修改配置文件\

找到LoadModule区域,加载下列模块:(去掉行首的#符号) LoadModule http2_module modules/mod_http2.so LoadModule rewrite_module modules/mod_rewrite.so

LoadModule socache_shmcb_module modules/mod_socache_shmcb.so LoadModule ssl_module modules/mod_ssl.so

加载下列配置:(去掉行首的#符号) # Secure (SSL/TLS) connections Include conf/extra/httpd-ssl.conf

保存

3. 修改配置文件\ 记得替换字符串。

/**↓这一部分操作属我瞎想后实施的,无法证明其合理性。实施此操作后并未使SSL配置失败↓**/ 去掉下列两行行首的\符号(注意,是含有\的。。。。。。。含\的默认行首没有\符号,不用修改)

SSLCipherSuite HIGH:MEDIUM:!SSLv3:!kRSA

SSLProxyCipherSuite HIGH:MEDIUM:!SSLv3:!kRSA

在下列两行中,增加\

/************↑但,不实施此操作,不确定是否会使SSL配置失败。(猜测不会)↑************/ /*************↑事实证明上述操作并没有什么卵用,应该是缺少其他配置内容↑*************/

修改网站相关参数

DocumentRoot \ #网站根目录,修改成Web文件夹 ServerName mambas.cn #域名

ServerAlias www.mambas.cn #域名别名 ServerAdmin Ariza@mambas.cn #联系邮箱 ErrorLog \ #日志

TransferLog \ #日志

修改证书参数

SSLCertificateFile \SSLCertificateKeyFile \

保存

重启Apache服务,打开网页检测。

如果需要自动将http跳转到https,则打开文件\,在ServerName下方添加下列代码 RewriteEngine on

RewriteCond %{SERVER_PORT} !^443$

RewriteRule ^(.*)?$ https://%{SERVER_NAME}$1 [L,R]

保存,重启Apache服务。

本文来源:https://www.bwwdw.com/article/9jd3.html

Top