保护限制Solr管理员url从外部用户使用.htaccess或tomcat



我最近在服务器上安装了Solr,我想限制只有本地用户可以使用.htaccess访问它

site.com:8983/solr/admin    [ restrict all user]

下面是。htaccess代码

RewirteRule on
<FilesMatch "127.0.0.1:8983/solr/admin">
    Order Deny, Allow
    Deny form all
    Allow 127.0.0.1
</FilesMatch>

或者有什么方法可以保护/限制Solr Admin在site.com:8983/solr/admin上从其他用户访问只有本地ip用户可以使用。

我试了这个,但它不工作

您的<FilesMatch "127.0.0.1:8983/solr/admin">行将永远不会匹配任何内容,因为您在正则表达式中卡住了主机名和端口。尝试使用Location容器:

<Location "/solr/admin">
    Order Deny, Allow
    Deny from all
    Allow 127.0.0.1
</Location>

或者更好,Directory:

<Directory "/path/to/your/document/root/solr/admin"> 
    Order Deny, Allow
    Deny from all
    Allow 127.0.0.1
</Directory>

您需要填写solr/admin目录的完整路径。

去掉RewirteRule on行,它没有做任何事情,它甚至没有拼写正确,并且会导致500错误。

但是,这两个指令都不能在htaccess文件中使用。您需要在服务器或vhost配置中使用这些。如果必须使用htaccess文件,那么在solr/admin目录下创建一个htaccess文件,并简单地将这些指令放入其中:

Order Deny, Allow
Deny from all
Allow 127.0.0.1

或者,在文档的htaccess文件中:

RewriteEngine On
RewriteCond %{REMOTE_ADDR} !127.0.0.1
RewriteRule ^/?solr/admin - [L,F]

查看以下链接。希望他们能帮助你。

  • 限制Solr管理员访问
  • Solr安全
  • 保护Solr管理控制台
  • 如何保护Apache Solr管理控制台

最新更新