最近公司的项目登录要转成https的,但是根据同源协议,https登录后的cookie与http的网页不能共享。两个问题,一个是centos下https的配置,
另外一个是登录后cookie的跨域问题
问题- apache配置https:
第一次配置apache,之前一直都是配的nginx,不到之处请谅解,但是https原理总归是一样的。
先生成证书,证书生成的办法网上一堆,不做介绍,生成完以后发现lampp自带了,而且都已经配置好了,直接访问就行了
但是直接用lampp的话会有一个问题,用https访问403,http访问正常,这是因为lampp有一个单独的httpd-ssl.conf配置文件,
修改一下对应的项目根目录Document Root就可以了
问题二.https和http跨域问题
首先介绍一下cookie的同源策略
同源 即保证cookie的 schma domain port path 相同则是同源,可以获取cookie,
也就是说即使在a.com访问b.com的内容,http协议带的cookie仍然是b.com站内的cookie,
否则不行, 比如在a.com 里面要访问b.com的接口,直接ajax是不允许的
但是可以使用jsonp去访问,这个时候b.com拿到了自己的cookie,再返回给a.com这个过程就是
跨域。所有的跨域都可以这样做。