为何WordPress路由器对部分静态文件无响应,其他则正常?
混合部署WordPress与旧静态资源时部分静态文件请求超时问题
背景信息
- 现有站点包含约5万个文件(以静态文件为主,少量PHP文件),计划逐步迁移至WordPress,根目录下约有500个文件/文件夹,总大小约10GB
- 需要实现URL透明兼容新旧内容:
example.com/、example.com/news指向WordPress内容,example.com/about.html、example.com/products(对应example.com/products/index.html)指向旧静态资源 - 选择依赖WordPress默认路由逻辑替代重定向(体验差)或反向代理(维护复杂),其逻辑为:
- 路径对应文件系统中的文件时,直接返回该文件
- 路径对应WordPress页面时,返回该页面
- 否则返回404错误
- WordPress部署在网站根目录(如
example.com/wp-content)
已尝试的操作与问题现象
- 上传
example.com/test/index.html,符合路由逻辑,WordPress页面正常运行,无问题 - 上传
example.com/test.php,文件可加载但因依赖缺失报错;上传包含所有依赖库的assets文件夹(约2000个文件、50MB)后,CSS、PHP引入、JS可正常加载,但服务器上的图片全部请求超时(外部图片如google.com的cleardot.gif可正常加载),图片大小约250K,所在文件夹文件数从十几到几百不等,WordPress主站始终正常 - 上传约1万个文件(2GB)测试,访问
example.com/test/test2.html、example.com/test3/index.htm等URL均超时,但WordPress主站及之前的example.com/test/index.php(除图片外)仍可正常访问;清空浏览器缓存或更换浏览器测试,结果一致 - 删除“可用”文件(除图片外)后返回404,重新上传后恢复访问,排除缓存或上传时间问题
- 通过SSH检查服务器,可正常返回的文件与无响应文件的权限、所有者及组设置完全一致
目前推测问题可能出在WordPress路由与文件系统的交互限制上,但无法确定具体原因及解决办法。
内容的提问来源于stack exchange,提问作者CGDev
相关产品推荐
相关产品推荐

