2

我真的不明白cURL是如何工作的。它可以从 PHP 文件中读取未解析的PHP代码吗?如果是这样,如何阻止一些黑客读取连接到我的数据库的脚本并窃取登录信息?

4

4 回答 4

7

否——无论何时发出任何类型的请求,服务器都会解析 PHP 代码。因此,如果您使用 cURL 从 Web 下载 PHP 文件,您将获得其解析后的 H​​TML 输出。

于 2009-04-15T18:33:42.860 回答
4

不,它不能。cURL 所做的只是访问一个 URL,就像您使用浏览器访问它一样。如果您可以使用浏览器阅读 PHP 源代码,那么 cURL 也可以,如果不能,则不能。

于 2009-04-15T18:33:48.400 回答
2

通过 HTTP,cURL 应该只能读取其中一个,因此可以肯定地说,如果您在浏览器中看不到 php,cURL 也不会。

但是,如果由于某种原因 Apache 的配置非常糟糕,它只会回显源文件 (php) 的内容。还有一些方法可以有意地配置 Apache 以返回呈现的页面或 php 源,但不能在同一地址上提供两者。

所以总的来说,你的问题的答案是否定的。

于 2009-04-15T19:25:56.870 回答
1

对于 HTTP 请求,没有。但是,如果您对存储 PHP 文件的服务器具有 FTP 访问权限和足够的权限,则可以使用 cURL 通过 FTP 连接并下载未执行的 PHP 源代码,就像连接任何其他 FTP 客户端一样。我不记得它是否支持 SFTP 或 FTPS,但它可能支持。

于 2009-04-15T18:58:28.170 回答