天天看点

如何部署HTTPS 申请证书 安装证书

目标:

让自己的网站,yyii.info用https://yyii.info访问,

条件:

1.用的是阿里云服务器,

2.在阿里云申请一个免费的证书。在安全(云盾)栏目->证书服务。

申请后,大约1天,会提示下载相关文件,上传到网站下。然后再等待自动审核通过。

之后,就能下载证书。

下载来有4个文件,

214113615990489.key,

214113615990489.pem,

chain.pem

public.pem

(域名放在西部数码的,也能申请一个免费证书。好象不能用到阿里云这边来。)

阿里云里有相关说明,如何布署证书。(这一段见本文后面)

因我的服务器是按oneinstack安装的。就不需使用阿里云的方法。

3.配置网站

./vhost.sh

配置了一个网站,

Do you want to setup SSL under Nginx? [y/n]: y

其他的按提示来。上面如果不是配置https的网站,就选n.

4.然后,可看到,

在/usr/local/nginx/conf/ssl

生成了,三个文件,

yyii.info.crt

yyii.info.csr

yyii.info.key

5.

但同时,也报了如下:

nginx: [warn] "ssl_stapling" ignored, issuer certificate not found for certificate "/usr/local/nginx/conf/ssl/yyii.info.crt"

AH00526: Syntax error on line 6 of /usr/local/apache/conf/vhost/yyii.info.conf:

Invalid command 'SSLEngine', perhaps misspelled or defined by a module not included in the server configuration

https仍是不能访问。

6.

群主yeho告诉我:你这个自签名证书 自己购买证书替换 重启nginx即可

7.

我在阿里云申请得到一年的免费证书,

然后,我是把这4个文件,放在,/usr/local/nginx/conf/ssl下

214113615990489.key,重命名为 ,域名.key

214113615990489.pem重命名为, 域名.crt  

在此感谢群主指点,不然自己哪里会知道啊!

8.重启nginx

有一点注意,如果网站下有index.html,会先读index.html.

10.

让我们再看看:

oneinstack生成的,/usr/local/nginx/conf/vhost/yyii.info.conf

1

2

3

4

8

9

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

42

43

<code>server {</code>

<code>  </code><code>listen 80;</code>

<code>  </code><code>listen 443 ssl http2;</code>

<code>  </code><code>ssl_certificate /usr/local/nginx/conf/ssl/yyii.info.crt;</code>

<code>  </code><code>ssl_certificate_key /usr/local/nginx/conf/ssl/yyii.info.key;</code>

<code>  </code><code>ssl_protocols TLSv1 TLSv1.1 TLSv1.2;</code>

<code>  </code><code>ssl_ciphers EECDH+CHACHA20:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5;</code>

<code>  </code><code>ssl_prefer_server_ciphers on;</code>

<code>  </code><code>ssl_session_timeout 10m;</code>

<code>  </code><code>ssl_session_cache builtin:1000 shared:SSL:10m;</code>

<code>  </code><code>ssl_buffer_size 1400;</code>

<code>  </code><code>add_header Strict-Transport-Security max-age=15768000;</code>

<code>  </code><code>ssl_stapling on;</code>

<code>  </code><code>ssl_stapling_verify on;</code>

<code>  </code><code>server_name yyii.info;</code>

<code>  </code><code>access_log off;</code>

<code>  </code><code>index index.html index.htm index.php;</code>

<code>  </code><code>root /data/wwwroot/yyii.info;</code>

<code>  </code><code>if</code> <code>(</code><code>$ssl_protocol</code> <code>= </code><code>""</code><code>) { </code><code>return</code> <code>301 https:</code><code>//$host$request_uri; }</code>

<code>  </code><code>location / {</code>

<code>    </code><code>try_files </code><code>$uri</code> <code>@apache;</code>

<code>  </code><code>}</code>

<code>  </code><code>location @apache {</code>

<code>    </code><code>proxy_pass http:</code><code>//127.0.0.1:88;</code>

<code>    </code><code>include</code> <code>proxy.conf;</code>

<code>  </code><code>location ~ .*\.(php|php5|cgi|pl)?$ {</code>

<code>  </code><code>location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|flv|mp4|ico)$ {</code>

<code>    </code><code>expires 30d;</code>

<code>    </code><code>access_log off;</code>

<code>  </code><code>location ~ .*\.(js|css)?$ {</code>

<code>    </code><code>expires 7d;</code>

<code>  </code><code>location ~ /\.ht {</code>

<code>    </code><code>deny all;</code>

11.看看 阿里云里写的如何安装证书,apache下,

----------  招募未来大神 -----------------------

如果您有利他之心,乐于帮助他人,乐于分享

如果您遇到php问题,百度且问了其他群之后仍没得到解答

欢迎加入,PHP技术问答群,QQ群:292626152

教学相长!帮助他人,自己也会得到提升!

为了珍惜每个人的宝贵时间,请大家不要闲聊。

愿我们互相帮助,共同成长!

加入时留言暗号,php,ajax,thinkphp,yii...

     本文转自phpervip 51CTO博客,原文链接http://blog.51cto.com/phpervip/1932004:,如需转载请自行联系原作者