怎么用web过滤器增加solr后台登录验证
发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,这篇文章主要讲解了"怎么用web过滤器增加solr后台登录验证",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"怎么用web过滤器增加solr后台登录验证
千家信息网最后更新 2026年11月03日怎么用web过滤器增加solr后台登录验证
这篇文章主要讲解了"怎么用web过滤器增加solr后台登录验证",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"怎么用web过滤器增加solr后台登录验证"吧!
solr后台自带是没有登录功能的,默认访问地址是:http://localhost:8983/solr/#/(内置jetty运行)。
要给sorl后台增加登录验证方法:
1、使用web服务器的登录验证(例如jetty、tomcat)
这种方式好处是不需要另外写代码,只需配置一下对应的web服务器就行了。
2、使用web过滤器过滤地址验证
这种方法是更加灵活,缺点是需要点代码开发。
本文介绍的是第二种方法:
SolrLoginFilter.javapackage com.penngo.solr;import java.io.IOException;import java.io.PrintWriter;import javax.servlet.Filter;import javax.servlet.FilterChain;import javax.servlet.FilterConfig;import javax.servlet.ServletException;import javax.servlet.ServletRequest;import javax.servlet.ServletResponse;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import javax.servlet.http.HttpSession;import org.apache.commons.lang3.StringUtils;public class SolrLoginFilter implements Filter { public void init(FilterConfig config) throws ServletException { } public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { HttpServletRequest httpRequest = (HttpServletRequest)request; HttpServletResponse httpResponse = (HttpServletResponse)response; HttpSession session = httpRequest.getSession(); String url = httpRequest.getRequestURL().toString(); String userAgent = httpRequest.getHeader("user-agent"); String query = httpRequest.getQueryString(); String servletPath = httpRequest.getServletPath(); String contextPath = httpRequest.getContextPath(); System.out.println("url=======" + ", url:" + url + ", servletPath:" + servletPath + ", contextPath:" + contextPath + ", query:" + query + ", userAgent:" + userAgent); Object isLogin = session.getAttribute("isLogin"); if(isLogin == null || ((boolean)isLogin) != true) { String user = StringUtils.isEmpty(request.getParameter("user")) == false ? request.getParameter("user") : ""; String password = StringUtils.isEmpty(request.getParameter("password")) == false ? request.getParameter("password") : ""; if(user.equals("admin") == true && password.equals("123") == true) { session.setAttribute("isLogin", true); httpResponse.sendRedirect(contextPath); return; } else { httpRequest.setCharacterEncoding("UTF-8"); response.setContentType("text/html;charset=UTF-8"); PrintWriter out = response.getWriter(); out.println(loginPage()); out.close(); return; } } chain.doFilter(request, response); } public void destroy() { } private String loginPage() { String page = "\n" + "\n" + "\n" + "\n" + ""; return page; }}在原来的web.xml中增加过滤器配置
SolrLoginFilter com.penngo.solr.SolrLoginFilter SolrLoginFilter / SolrRequestFilter org.apache.solr.servlet.SolrDispatchFilter excludePatterns /partials/.+,/libs/.+,/css/.+,/js/.+,/img/.+,/templates/.+ SolrRequestFilter /* LoadAdminUI org.apache.solr.servlet.LoadAdminUiServlet SolrRestApi org.restlet.ext.servlet.ServerServlet org.restlet.application org.apache.solr.rest.SolrSchemaRestApi LoadAdminUI /index.html SolrRestApi /schema/* .xsl application/xslt+xml index.html Disable TRACE / TRACE Enable everything but TRACE / TRACE
运行结果:


感谢各位的阅读,以上就是"怎么用web过滤器增加solr后台登录验证"的内容了,经过本文的学习后,相信大家对怎么用web过滤器增加solr后台登录验证这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!
登录
验证
后台
过滤器
方法
学习
代码
内容
地址
服务器
服务
运行
配置
功能
只需
好处
就是
思路
情况
文章
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
互联网科技名片
新华互联网科技学校
重生之互联网科技帝国
互联网科技的发展
互联网科技的英文
互联网金融科技创新
腾讯科技 互联网女皇
互联网科技logo设计
互联网科技大会
成都狮子座互联网科技
中国最先进互联网科技公司
互联网在线教育科技创业
互联网第三次科技革命特征
智帮互联网科技公司最近动向
启辰互联网科技
互联网营销推广黑科技
互联网与数字科技关系
35岁以上互联网科技行业
全球科技与互联网公司市值变化
山东蛋芒互联网科技有限公司
新华互联网科技
广州紫鲸互联网科技有限公司
期待互联网科技
卓越科技(互联网 )
互联网养老 桔豆科技
福州新华互联网科技学校 知乎
互联网科技与管理
黑科技 体验场景 互联网大会
互联网相关科技技术
青岛互联网科技园