如何知道/更改PHP Java网桥端口号
我有两台机器:如何知道/更改PHP Java网桥端口号,java,php,security,glassfish,php-java-bridge,Java,Php,Security,Glassfish,Php Java Bridge,我有两台机器: 首先是PHP+Apache for WebApp(10.1.1.33) 其次是Glassfish,用于后端任务和报告等(10.1.1.34) 第一台机器(Apache)可以从第二台机器(Glassfish)访问Java.inc文件 有一个防火墙设置,允许8080从Apache(10.1.1.33)机器访问Glassfish(10.1.1.34)机器。我认为这就是为什么Java.inc是可访问的,然而phpjavabridge为其余的通信保留了一个单独的端口。除非添加特定的保留端口
10.1.1.33
)10.1.1.34
)8080
从Apache
(10.1.1.33
)机器访问Glassfish
(10.1.1.34
)机器。我认为这就是为什么Java.inc
是可访问的,然而phpjavabridge
为其余的通信保留了一个单独的端口。除非添加特定的保留端口,否则我的应用程序不会工作。
作为一种解决方法,我添加了一条规则,允许来自Apache机器的任何端口
allow 0-65535 from 10.1.1.33
这似乎不是个好主意,因为我必须关闭所有端口,只允许真正需要的端口
Java端配置
下面的jar文件被复制到JavaWeb项目的lib文件夹中
web.xml
的一部分
<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-mapping>
<servlet-name>PhpJavaServlet</servlet-name>
<url-pattern>*.phpjavabridge</url-pattern>
</servlet-mapping>
php.java.servlet.ContextLoaderListener
PhpJavaServlet
php.java.servlet.PhpJavaServlet
PhpJavaServlet
*.phpjavabridge
问题:
将PHP/Java桥库添加到Java应用程序中
类路径:JavaBridge.jar
我们如何验证网桥是否真的在使用这个端口。除了在上述指定环境中部署应用程序之外?希望在本地测试。上述方法适用于独立应用程序。
<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-mapping>
<servlet-name>PhpJavaServlet</servlet-name>
<url-pattern>*.phpjavabridge</url-pattern>
</servlet-mapping>
import javax.swing.JOptionPane;
public class HelloWorld {
public static final String JAVABRIDGE_PORT="8087";
static final php.java.bridge.JavaBridgeRunner runner =
php.java.bridge.JavaBridgeRunner.getInstance(JAVABRIDGE_PORT);
public static void main(String args[]) throws Exception {
runner.waitFor();
System.exit(0);
}
public void hello(String args[]) throws Exception {
JOptionPane.showMessageDialog(null, "hello " + args[0]);
}
}