使用Java从网站读取php文件?

使用Java从网站读取php文件?,java,php,execute,Java,Php,Execute,我知道您可以使用Java从如下网站执行php文件: URLConnection conn = new URL("http://localhost/file.php").openConnection(); conn.connect(); 但是,让Java以文本文件的形式读取php文件是可能的吗?可能通过使用BufferedReader 谢谢。如果您想阅读php源代码,那么答案是否定的-您无法在典型的Web服务器配置中阅读php源代码。在大多数情况下,允许它是非常不安全的——密码和其他常量通常存储

我知道您可以使用Java从如下网站执行php文件:

URLConnection conn = new URL("http://localhost/file.php").openConnection();
conn.connect();
但是,让Java以文本文件的形式读取php文件是可能的吗?可能通过使用BufferedReader

谢谢。

如果您想阅读php源代码,那么答案是否定的-您无法在典型的Web服务器配置中阅读php源代码。在大多数情况下,允许它是非常不安全的——密码和其他常量通常存储在php源代码中

但是,如果您只是想像浏览器一样读取执行php文档的结果,那么可以使用以下内容:

URL u = new URL("http://www.example.com/my/php/doc.php");
URLConnection c = u.openConnection();
InputStream r = c.getInputStream();
BufferedReader reader = new BufferedReader(new InputStreamReader(r));
for(String line; (line = reader.readLine()) != null;) System.out.println(line);
要通过http读取远程php文档的源代码,需要将Web服务器配置为不解析和执行文件,而只是盲目地将其作为纯文本文件提供

这可以通过几种方式实现

卸载php-无php引擎,无代码执行。 更改文件扩展名-apache实际上只是通过文件扩展名来识别文件,因此在许多情况下,将其更改为.phpsource就可以做到这一点。 更改apache配置-可以全局更改,也可以通过.htaccess更改单个目录的Web服务器配置。您可能希望执行诸如关闭php_标志引擎或RemoveHandler.php之类的操作
请注意,只有上面的第一种方法,也可能是第二种方法,不会在服务器中打开潜在的安全漏洞。所以请谨慎使用。

Edit:是否可以使用Java阅读php源代码?类似于HTML,您可以使用BufferedReader解析其源代码。是的,这是可能的,但您必须重新配置Web服务器。我将编辑我的答案。编辑:是否可以使用Java阅读php源代码?与HTML类似,您可以使用BufferedReader解析其源代码。