我最近在服务器上安装了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用户可以使用它..
我试过这个,但它不起作用。
答案 0 :(得分:1)
您的<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 config的服务器中使用它们。如果你必须使用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]
答案 1 :(得分:0)