.htaccess - 使用 .htaccess 或 tomcat 保护限制来自外部用户的 Solr Admin url

标签 .htaccess solr restriction

我最近在服务器上安装了 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>

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

我试过这个,但没用。

最佳答案

你的 <FilesMatch "127.0.0.1:8983/solr/admin"> line 永远不会匹配任何内容,因为您已将主机名和端口卡在正则表达式中。尝试使用 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 文件中使用。您需要在虚拟主机配置的服务器中使用这些。如果您必须使用一个 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]

关于.htaccess - 使用 .htaccess 或 tomcat 保护限制来自外部用户的 Solr Admin url,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14019694/

相关文章:

apache - Mod_rewrite 正在将/var/www 添加到生成的 URL

java - 使用 "org.apache.solr.common.util.SimpleOrderedMap cannot be cast to java.util.Map"处理程序时出现 solrj "/suggest"异常

java - Play Framework 2.4.6 不安装依赖项

sql - PostgreSQL 列值必须按顺序排列

.htaccess - 使用 .htaccess 的 Google SEO 友好 URL?

.htaccess - 将 Apache 转换为 Nginx

.htaccess - 如何从根目录的子文件夹重写 url

solr - 如何检查每个字段的 solr 索引大小

javascript - 受限制的 JavaScript Array Pop Polyfill 不起作用

apache-flex - 如何限制我的 AIR 分发?