2012-10-30 2 views
0

난 당신이 다음과 같은 웹 사이트에서 PHP 파일을 실행하기 위해 자바를 사용할 수 있음을 알고 :Java를 사용하여 웹 사이트에서 php 파일 읽기?

URLConnection conn = new URL("http://localhost/file.php").openConnection(); 
conn.connect(); 

그러나 자바 텍스트 파일 방법으로 PHP 파일을 읽을 수 있도록 할 수 있을까요? (아마도 BufferedReader를 사용하여)

감사합니다.

+0

편집 : 자바를 사용하여 PHP 소스 코드를 읽을 수 있습니까? BufferedReader를 사용하여 소스를 파싱 할 수있는 HTML과 유사합니다. –

답변

2

php 소스를 읽으려면 대답은 no입니다. 일반적인 웹 서버 구성에서 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 문서의 원본을 읽어하려면, 웹 서버가 아니라 그냥 일반 텍스트 파일로 맹목적으로 봉사 파일을 실행 하지 구문 분석 &로 구성해야합니다.

이것은 몇 가지 방법으로 얻을 수 있습니다.

  1. php - PHP 엔진이없고 코드가 실행되지 않습니다.
  2. 파일 확장자 변경 - 실제로 아파치는 파일 확장명으로 파일을 식별하기 때문에 .phpsource으로 변경하면 많은 경우에 트릭을 수행합니다.
  3. apache 구성을 전역으로 변경하거나 .htaccess을 통해 단일 디렉토리에 대한 웹 서버 구성을 변경할 수 있습니다. 당신은 첫 번째, 그리고 어쩌면 두 번째, 위의 방법이되지가 서버에서 잠재적 인 보안 구멍을 열어 않습니다 php_flag engine off 또는 RemoveHandler .php

주처럼 뭔가를 할 것입니다. 따라서주의해서 사용하십시오.

+0

편집 : 자바를 사용하여 PHP 소스 코드를 읽을 수 있습니까? BufferedReader를 사용하여 소스를 파싱 할 수있는 HTML과 유사합니다. –

+0

예, 가능하지만 웹 서버를 다시 구성해야합니다. 나는 내 대답을 편집 할 것이다. – lynks

관련 문제