java - CoreNLP 服务器仅位于本地主机上

标签 java stanford-nlp

当我启动CoreNLP Server时在 Linux 上:

java -mx4g -cp "*" edu.stanford.nlp.pipeline.StanfordCoreNLPServer -port 9000 -timeout 15000

可以通过http://localhost:9000/(也可以通过127.0.0.1:9000)访问。但是,也可以通过我的外部 IP 地址访问它,但我不希望这样做。

我尝试使用 -backends 127.0.0.1:9000 选项,但这没有帮助。

有没有办法在 CoreNLP Server 中(而不是在操作系统防火墙规则中)指定仅在 localhost 和 127.0.0.1 上提供服务,而不在系统上的任何其他 IP 地址上提供服务,以便外部连接无法连接到它?

最佳答案

无法通过命令行参数绑定(bind)到特定的 IP 地址。在查看源码中发现here您可以看到它没有指定绑定(bind)地址。默认情况下它将绑定(bind)到所有地址。您唯一的选择是运行某种防火墙并过滤/阻止除本地 IP 之外的所有 IP 对端口的访问。

关于java - CoreNLP 服务器仅位于本地主机上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44009938/

相关文章:

java - Spring RoutingDataSourcevalidationQuery 没有被注入(inject)

java - 如何改变TextPane的大小?

java - 如何向数据库添加字段并连接到代码

java - 如何在 Android 2.1 中实现均衡器?

android - 任何(粗略的)相当于 iOS NSLinguisticTagger for android?

stanford-nlp - 如何从斯坦福 CoreNLP 获取 englishPCFG.ser.gz 作为单个文件

java - 使用 Java 创建 GDG 基础

java - 斯坦福自然语言处理 : Keeping punctuation tokens?

machine-learning - 如何训练 NER 识别单词不是实体?

java - 如何获取斯坦福解析器输出作为节点和边的列表?