LNMP: nginx加装模块 nginx-rtmp-module
研究在已经部署lnmp的服务器上搭建以nginx做直播推流分发的服务端,需要给一键部署的nginx 添加rtmp第三方模块。
先说总结,lnmp一键部署脚本考虑得非常周到,只要简单操作即可无缝编译升级。只是文档说明有点语焉不详,网上流传的其他日志也错漏颇多,跟着别人的日志做差点翻车,把在线的网站给炸down了,还好直接覆盖安装没有影响任何配置。
研究在已经部署lnmp的服务器上搭建以nginx做直播推流分发的服务端,需要给一键部署的nginx 添加rtmp第三方模块。
先说总结,lnmp一键部署脚本考虑得非常周到,只要简单操作即可无缝编译升级。只是文档说明有点语焉不详,网上流传的其他日志也错漏颇多,跟着别人的日志做差点翻车,把在线的网站给炸down了,还好直接覆盖安装没有影响任何配置。
处理手机上传的图片的时候, 遇到上传后的图片方向不对的问题,拍摄的时候是竖拍,但上传后照片横过来了。
了解到手机(包括安卓和iOS都是用exif的 Orientation值来标记陀螺仪的水平方向)
要实现在php中读取并修正图像的显示方向,就要用到exif_read_data() 。
查看过php_info 后确认现在的lnmp上并没有这个扩展,代码执行后报错
PHP Fatal error: Uncaught Error: Call to undefined function exif_read_data() in ...
windows的处理方法倒是比较简单
从php.ini 中去掉以下两行的注释
;extension=php_mbstring.dll
;extension=php_exif.dll
确保配置文件对应的 ext目录内有对应的 dll文件,然后重启http服务就好
linux下则相对复杂一点点,需要编译,下文为流水账
同样的代码同样的邮箱账号在本地测试(lnmp1.5)通过,在腾讯云线上环境则出现一直加载直到超时。中途遇到若干可能出现问题的检测点,最终解决备忘如下。
今日配置经历的备忘,依次需要排查的顺序
前4项百度或google会有具体的操作建议,nginx 看 lnmp status
也一目了然
流水账说一下命令的话大概就是
systemctl status firewalld
iptables -L
netstat -an | grep 80
lnmp status
这些都不是今天的原因,直到派工单给阿里客服才告诉我阿里云(不同于腾讯云)还有额外一层安全组策略是在控制台定义端口过滤的
工程师 60841 号 : 您好,查看到实例所属安全组中没有允许80 端口访问的规则,请添加允许该端口访问的规则后再尝试。
添加安全组规则请参考文档:
https://help.aliyun.com/document_detail/25471.html?spm=a2c4g.11186623.6.713.LeJKkB
2019-04-29 12:04:39
操作位置是 : 云服务器 ECS - 网络和安全 - 安全组 - 创建安全组
创建的时候有快速设置,明明看到有面相 webservice的模板,设置后又不见了...需要手动额外添加
添加的方式是安全策略的右则点选 配置规则 然后选中入方向的 http 及 https 服务(对应端口80/443)
最后再确认一遍,在云主机列表(云主机实例) 右则菜单 更多 ,网络和安全,加入安全组 选中刚才创建的策略
确认完成后,实时生效,网站应该可以打开了。
*附阿里的FAQ的一般解决办法
https://help.aliyun.com/knowledge_detail/59367.html#centos