반응형
자바 개발자들은 톰캣이 자바 웹 프로젝트를 배치하는 데 쓰인다는 것을 알고 있다.그동안 PHP프로젝트와 동일한 도메인, 동일한 포트를 요구하는 프로젝트가 있었는데, nginx를 사용하지 않고 어떻게 구현이 가능합니까? 자바 Bridge를 통해 tomcat이 php 실행을 지원할 수 있다는 것을 알게 되었다. 우리도 한번 해 보자. 자세한 절차는 다음과 같습니다.
1.환경준비
php 환경 설치, 자바 가상 머신 설치, tomcat
이들 툴의 최소 구성은 php 5.x, 자바 6 이상, 톰캣 6 이상이다.
2.톰캣 설정
PHP/Java Bridge의 Java Bridge.jar, php-servlet.jar 및 php-script.jar를 Tomcat의 lib 디렉토리에 복사합니다.
tomcat 설치 디렉터리의 conf 폴더에 있는 web.xml 파일을 수정하고 web-app 탭에 다음 코드를 추가합니다
<listener>
<listener-class>php.java.servlet.ContextLoaderListener</listener-class>
</listener>
<servlet>
<servlet-name>PhpJavaServlet</servlet-name>
<servlet-class>php.java.servlet.PhpJavaServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>PhpCGIServlet</servlet-name>
<servlet-class>php.java.servlet.fastcgi.FastCGIServlet</servlet-class>
<init-param>
<param-name>prefer_system_php_exec</param-name>
<param-value>On</param-value>
</init-param>
<init-param>
<param-name>php_include_java</param-name>
<param-value>Off</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>PhpJavaServlet</servlet-name>
<url-pattern>*.phpjavabridge</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>PhpCGIServlet</servlet-name>
<url-pattern>*.php</url-pattern>
</servlet-mapping>
위의 단계를 완료한 후 tomcat을 재시작하면 어떠한 공정에서도 php 스크립트를 실행할 수 있지만 webapps/에서는 직접 실행할 수 없습니다. tomcat 홈페이지에서 cgiPathPrefix에 대한 설명은 다음과 같습니다.
The CGI search path will start at the web application root directory + File.separator + this prefix
webapps 디렉터리에서 index.php 파일에 직접 액세스하기
<?php phpinfo();?>
방문할 때 나타나다
반응형
'개발 꿀팁 > PHP' 카테고리의 다른 글
HBuilder+wampserver PHP 외장 웹 서버 설정 (0) | 2022.07.19 |
---|---|
MATLAB 고백장미 그리기-회전장미,블루장미 (0) | 2022.07.19 |
php 코드 실행 방법 (0) | 2022.07.19 |
PHP 실행 환경 설정(xampp+tomcat) (0) | 2022.07.19 |
PHP 코드 감사 입문 (0) | 2022.07.19 |