由于站点需要用到https的方式来进行用户的注册
小白从startssl申请到的证书,不知道肿么和php程序结合来用
先说下小白程序的运行环境吧,希望能得到大伙的帮助
1)nginx代理内网的apache工作方式处理PHP脚本
2)网站程序使用的是MVC方式 3)在配置nginx虚拟主机的时候也十分吃力
(虚拟主机配置文件一共只有2个,domain.conf跟ssl.domain.conf)
小白贴出配置,不知道是否配置正确
domain.conf的配置如下
另外一个是配置https的文件
配置完成也都能工作,要是能把这2个配置文件合并为一个就好了
好,说一下要实现的功能是这个样子滴
1)用户点击注册 http://domain.cn/signin
它会自动转为 https://domain.cn/signin
跳转的动作是程序去控制,还是在nginx配置文件中控制呢
2)采用https的方式打开网页,页面的css,js都无法正常工作,页面不能渲染出该有的样式
以上就是小白在配置ssl,增加https功能遇到的问题,希望能得到大神的帮助
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
我ecs的成功了,参考一下我这里https://bbs.aliyun.com/read/303413.html
这个问题和PHP没有任何关系
你只需要往server段里面加如下代码:
#监听SSL的端口
listen 443;
#打开SSL并指定证书
ssl on;
ssl_certificate ssl.crt;
ssl_certificate_key ssl.key;
就可以, 和其他的设置没有关系.
如果不行的话,去看nginx的日志
关于跳转逻辑的建议:建议把网站程序写成域名无关的, 在程序中用类似 /user.php 这样的相对地址来跳转, 然后在Nginx中来做从http到https的跳转.
但如此一来,你还是需要写两个server, 在80的那个server中,跳转到https协议:
server {
listen 80;
server_name xxoo.com;
location / {
rewrite ^/(.*) https://xxoo.com/$1 permanent;
}
}
新版本的浏览器的安全策略决定了,https协议中,加载来自http协议的资源(CSS/JS)会有警告, 不可能让所有用户都忽略警告,所以你需要让所有资源都通过https来传输.
评论
全部评论 (0)
你好,我是AI助理
可以解答问题、推荐解决方案等
评论
全部评论 (0)