linux php文件include失败 一个很神奇的问题
1. html生成失败,权限问题
前天用php生成模板,在windows上开发,include文件,读缓存写文件,顺风顺水,晚上写完后传到linux上html生成失败,发现文件和文件夹都没生成,网上查找说是权限问题,于是用ftp修改整个目录的权限,右键文件夹,看到菜单有个CHMOD的项,选择后如下图,所有权限开放
之后文件都可以生成,可是又遇到一个更诡异的问题,耗费1天多时间;
2. include 文件失败
在windows上include没有任何问题,在linux上死活包含失败,权限问题查找一堆,最后测试方法如下:
1. 创建一个最简单的.php文件,仅仅输出简单的文字,连文件名都要简单,竟然包含输出成功了!! 可见不是权限问题。
2. 怀疑自己include的文件内容有问题,于是逐渐缩减自己include文件,包含失败,最后索性缩小到只有一行简单的输出,还是失败;
3. 哦,突然灵光一闪,文件编码问题!!一查看,果然!!赶紧修改为utf-8编码,还是include失败,期间一直在本地windows测试,都是成功;
4. 为什么,为什么在linux上测试文件include成功,我要include的文件就失败了,这两文件都是简单的输出啊,文件编码都一样啊,难道是……我这个文件被诅咒了?这个文件名……
5. 最终,最后了,难道是文件名大小写(哭腔),仔细对比下,文件名大小写还真对不上,将include("xxxx")改为匹配的大小写,成功了。。但是我一点都不开心;
6. linux啊,这,,,,include一定要注意大小写,也许仅仅是阿里云吧。。。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器