技术饭 解决两个跨域但是同站、同域、同源的域名(Sec-Fetch-Site: same-site),通过接口请求设置session_id()改变PHPSESSID的问题
解决两个跨域但是同站、同域、同源的域名(Sec-Fetch-Site: same-site),通过接口请求设置session_id()改变PHPSESSID的问题,现象:1、两个https的二级域名解析在同一台服务器上,端口都是443;2、前端域名与接口域名同时在同一个浏览器打开,接口域名登录后台生成PHPSESSID,保存了登录状态;3、前端域名请求接口域名生成验证码,验证保存在session里面,由于访问接口,每次的会话session_id都是不一致,为了实现跨域验证码的验证,这个时候需要在接口端设置session_id(随机数),然后把这个随机值返回给前端,到时候验证的时候再设置session_id(随机数),这样会话才能保持一致,验证码才能通过验证;4、由于步骤3设置session_id(随机数)重新生成PHPSESSID后,导致了步骤2登录后台的PHPSESSID被改成了步骤3设置的PHPSESSID,这时候步骤2的登录状态就消失了,直接退出登录。
阅读全文 » 1197天前2021年08月14日
技术饭 php 7.2 安装 swoole 扩展
centos版本升级到8,PHP的环境升级 php 7.2 后,当我们需要使用到swoole服务的时候这时候就需要安装swoole,php扩展的安装相对比较简单,swoole的安装步骤可以参考swoole官方的文档教程:https://wiki.swoole.com/#/environment
阅读全文 » 1205天前2021年08月05日
技术饭 本地开发环境nginx配置HTTPS,使用https证书
本地开发环境nginx配置HTTPS,使用https证书,我们访问的所有网站几乎都是受HTTPS保护的。如果你的站点还没有,那你应该使用它。使用HTTPS保护服务器也意味着你不能从不是HTTPS服务器向此服务器发送请求。这给使用本地开发环境的开发人员带来了一个问题,因为它们都运行在开箱即用的http://localhost环境中。
阅读全文 » 1445天前2020年12月09日
技术饭 阿里云cdn的免费https证书到期未更新导致页面提示https过期不安全,访问网页显示空白
阿里云cdn的免费https证书到期未更新导致页面提示https过期不安全,访问网页显示空白,一直以来https长期付费的证书都比较贵,所以一直采用的是阿里云的免费https证书,这种https证书一年一换,这两天没注意看,证书过期了,然后就重新申请下载,等nginx都配置好之后发现访问网页显示空白,还是一直提示证书过期不安全,搞了好久,证书正常下载,也替换了,ngnix也重启了,还是这样,后来查看了下是因为当前的域名绑定了阿里的cdn,cdn的https证书并未更新,还是原来的那个,这才导致了访问一直空白,提示证书过期。
阅读全文 » 1456天前2020年11月28日
技术饭 解决Unable to find the wrapper "https"的二种方法
这个问题其实通php加载openssl模块来解决,是件挺容易的事,但是牵扯到用什么linux系统,以及是用多少位的linux系统,以及php自身的版本问题,以及是不是手动安装,还是管理工具安装时,其实有的时候,还是比较麻的。
阅读全文 » 1470天前2020年11月13日
技术饭 PHP短网址生成逻辑与实现
微博短网址大家一定不陌生,如:http://t.cn/ 这个网站点开就直接跳转到了微博,是不是看起来很方便,但应该很多人都不知道是怎么实现的,我们今天就来讲讲PHP生成短网址的方法。PHP生成短网址的:如果把短网址还原了,你知道是个什么样子的吗?可能你看到的短网址都是这个样子:http://p-d-d.cn/T0f121,其实他还原了说不定就是这个样子:https://www.copylian.com/,按这个格式可以知道这个短网址其实是通过代码将长的网址:https://www.copylian.com/ 转成 http://p-d-d.cn/T0f121 ,然后短网址做个重定向到长网址就好了。
阅读全文 » 1478天前2020年11月06日
技术饭 php判断当前是http还是https
php判断当前是http还是https,使用 $_SERVER['HTTPS'] 的值来判断,或者通过 $_SERVER['SERVER_PORT'] 的端口号443来判断是否是https,如果is_ssl()方法返回true则是https,如果返回false则是http。
阅读全文 » 1505天前2020年10月10日
技术饭 在https中发ajax请求http被浏览器block
在https中发ajax请求http被浏览器block,从https发送http请求是不可以的,除非对方提供了https的接口。
阅读全文 » 2159天前2018年12月26日
技术饭 Apache配置https启动不了的解决办法
在证书控制台下载Apache版本证书,下载到本地的是一个压缩文件,解压后里面包含_public.crt文件是证书文件,_chain.crt是证书链(中间证书)文件,.key文件是证书的私钥文件(申请证书时如果没有选择系统创建CSR,则没有该文件)。
阅读全文 » 2159天前2018年12月26日
技术饭 阿里云中如何实现http认证成https?
阿里云中如何实现http认证成https?今天看到阿里云有个免费的https证书认证,今天早上闲着无聊就搞了一下,刚刚开始搞了大半天一直报错,后续百度之后看到了许多解决方案,就综合乐一下。
阅读全文 » 2802天前2017年03月23日
技术饭 php中curl扩展的简单使用
cURL可以使用URL的语法模拟浏览器来传输数据,因为它是模拟浏览器,因此它同样支持多种协议,FTP, FTPS, HTTP, HTTPS, GOPHER, TELNET, DICT, FILE 以及 LDAP等协议都可以很好的支持,包括一些:HTTPS认证,HTTP POST方法,HTTP PUT方法,FTP上传,keyberos认证,HTTP上传,代理服务器,cookies,用户名/密码认证,下载文件断点续传,上传文件断点续传,http代理服务器管道,甚至它还支持IPv6,scoket5代理服务器,通过http代理服务器上传文件到FTP服务器等等。这就是我们为什么要使用cURL的原因!
阅读全文 » 2880天前2017年01月04日