Prestashop-对模块内自定义PHP文件的GET请求返回404

问题描述 投票:0回答:1

我最近为Prestashop网站开发了一个模块,其中有一个自定义PHP文件(不是控制器或其他任何文件,只是纯PHP文件),用于简单的GET请求(生成PDF)。

文件的路径是:

website root dir -> modules -> module_name -> script.php

因此,对于这些请求,我在本地开发环境(localhost)上使用localhost/modules/module_name/script.php

但是,将模块部署到生产网站时(显然用域名替换localhost时,该网站返回404错误。尽管我确定文件存在,但是在此确切位置。

在我的本地环境和生产环境之间尝试比较.htaccess文件(网站的根目录下的文件和modules文件夹内的文件),它们完全相同(域名除外)。

尽管我可以在网站的根目录中运行其他PHP文件(例如,可以很好地访问example.com/script.php)。另外,模块的其余部分(控制器,后台页面,挂钩等)也可以正常工作,只有此文件不能正常工作。

请注意,在两种环境下,Prestashop后台都打开了“友好URL”。可能是什么问题?同样,我100%确定URL和脚本的路径正确。 Prestashop是阻止请求还是其他?

编辑:将脚本移动到站点的根目录,并使用URL example.com/script.php可以正常工作。但我想了解为什么它在模块目录中不起作用。

如果需要更多信息,请告诉我。

php http-status-code-404 prestashop prestashop-1.7
1个回答
0
投票

您的开发环境和产品环境的Web服务器是否相同并且配置相同?在您的生产Web服务器上可能有一些特定的配置阻止您访问该文件:进行某种强化的配置很有意义。

© www.soinside.com 2019 - 2024. All rights reserved.