最近因为这个升级熬夜了几次,虽然已经顺利解决,还是记录下。 起因是因为 Struts 2.3存在大的漏洞导致服务器被黑 , 有漏洞是一方面,主要的原因还是没做好服务器web目录的权限管控,没有限制目录为只读状态 没有控制JSP文件的运行 。 项目运行于 weblogic10 + jdk 1.6 下,出于紧急升级的目的,直接丢了全部的Struts 2.5.10.1 的全部依赖jar文件到lib目录,报jar文件的版本太高,于是直接更新jdk到1.7 ,启动完成 。本来以为这就算好了, 但是接下来在新机器部署时,weblogic升级为了12c ,项目复制过去后启动不了,也不报错,于是开始了连续几天的折腾,显示尝试替换asm jar的版本,后来发现2.5已经抛弃asm3升级为asm5了,于是把所有的2.3的包都清理掉 换2.5的mini lib ,结果还是不行,因为也没有错误信息输出,一度一筹莫展 ,后来没办法,直接清理掉了全部的Struts Spring jar文件,恩 这个项目起先是struts 后来又引入了Spring ,从0开始添加了最小量的Struts Spring包 ,启动 成功 。 项目的jar文件大小也缩减了一半。 开发过程中,程序员们图省事 丢了太多了包进来,相互冲突 ,很混乱。 思考了下 maven ,的确是好的。
Archives: 技术相关
极路由3刷openwrt系统实现校园网Drcom拨号上网
2017-01-28 by Jinyang | No Comments | Filed in 技术相关校园网使用drcom5.2D版客户端软件拨号上网,只能通过电脑先联网后再分享无线给其他设备,无线信号弱 电脑也得不到关机。 为什么选择极路由3? 只是因为手头上有一个而已,真要选择的话 貌似极路由3也不是一个最具性价比的选择,京东当前售价199 相对这个配置来说还是贵了点的。 如果新购买路由器 建议参考这个 https://www.zhihu.com/question/30771491 文章选择。
基于Squid4+let’s encrypt证书+用户鉴权的全程安全加密的HTTPS代理
2017-01-07 by Jinyang | No Comments | Filed in 技术相关此前实现了简单的自用网络辅助服务: http://deriji.com/2016/09/30/602.html , 因为是自己使用,所以也就没设置密码 ,浏览器到代理服务之间的访问是透明的, 年底接到阿里云的自动语音电话 说网站提供了法律禁止的服务 必须停止 于是只好关好相应的服务 ,习惯了基于PAC的自动判断网络方式的上网 虽然也有其他工具能实现上网 但是效果和方便性上始终有点不爽。 新完成的模式如下: Chrome 浏览器 -> SwitchyOmega 浏览器插件 -> PAC文件配置的代理规则 -> HTTPS形式的Squid代理 ->验证用户名密码(Squid basic_ncsa_auth)-> Privoxy (将HTTPS的代理转换为Socks5) -> SS Local服务(国内) -> SS Server (海外) 我是菜鸟,只为自己搭建服务 自己使用,不对外提供服务哦。 都是开源的方案 ,参考官方文档 也都能搞定 ,只不过国内一台服务器 国外一台服务器 成本近千元了 ,如果只是为了1个人上网 没必要折腾贵的 ,买个海外廉价服务器直接装个SS就好了。 Squid默认不支持SSL ,需要自行安装文件,添加 –with-openssl’ ‘–enable-ssl-crtd 参数安装 , 免费的SSL证书很多,阿里云 腾讯云都提供免费的,不过我想自己用 还是let’s encrypt放心一些 […]
SB Admin 2 Bootstrap admin theme & fontawesome
2016-11-15 by Jinyang | No Comments | Filed in 技术相关许久没有做网站后台了 , 某一个需求需要用到一个后台,于是就去搜了下 , 因为前台时 bootstrap 的,所以想着后台最后也时 bootstrap的,于是就找到了相对简洁的 SB Admin 2 Bootstrap admin theme 。 闹了个笑话是下载下来的模板文件的示例页面都很漂亮,但是我放到spring mvc项目里去后小图标都不显示,于是先找文件的图标,发现根本没有图片文件,后来才发现原来是使用了 字体图标 , 感觉这几年没太接触前端,落伍了。 赶紧去了解了下 fontawesome ,Font Awesome 是一套完美的图标字体 ,Font Awesome的矢量图标,将使您的网站在视网膜级的高分屏上大放异彩。 真是要不断学习,不断的亲自写代码 ,才会不太落伍 。
多域名的泛域名&泛用户邮件收取服务
2016-10-22 by Jinyang | No Comments | Filed in 技术相关手头持有200多个域名了,多少域名都是经由抢注竞拍而得到的,这些域名有一些在过去有过企业的使用记录 可能是企业倒闭了导致域名流失,有一些我持有com 而国内有企业持有cn在使用,恩 我持有的多少是com的双拼或三拼,都是本着自己建设网站运营的思路而持有,少数几个cn域名是作为中国互联网后续走向的不确定性而储备。 持有的域名自然流量其实都并不高,但是本着勤俭节约的原则,此前建设了简单的域名停放托管平台,方便展示域名,一段时间运行下来看还算是可行。在实际日常使用中,有时会需要使用到域名的邮箱,但是国外的Google企业邮箱收费太贵(相对收入)、微软域名邮箱停止了服务,国内qq企业邮箱现在不支持域名级的别名 早期支持3-5个域名绑定 现在好像只能一个了,每次收发不同的邮件都要分别到不同的网站去,浪费人力,并且有时用户写错了邮箱或域名 导致错过了邮件, 能不能把所有域名的所有用户的邮件都收到一起 方便随时查看使用呢 ? 基于这个想法折腾了好几小时,总算是实现了 。 首先 把所有域名的mx记录都解析到相同的IP去,为了防止日后IP地址变更又要重写改写,所以直接使用 mx记录里填写域名的方式 ,比如 @mx mail.deriji.com 5 然后就是服务端的搭建了 我选择的是: Postfix Dovecot Mysql PostfixAdmin RoundcubeWebmail SpamAssassin Dovecot-sieve 前3个没啥好说的,基础的,在配置几百个域名的全部邮件转发到一个邮箱是,没能自己搞定,于是就引入了 PostfixAdmin , 逻辑很清晰,域名 域名的别名 邮箱 邮箱的别名 配置: postfixadmin的官方指导wiki都能找到以上的配置。 Roundcube 是一个web mail 开源服务。 搭建好邮件后发现很多垃圾邮件,于是又引入 SpamAssassin ,SpamAssassin 可以识别垃圾邮件并予以评级 ,但是垃圾邮件还是跑到了收件箱,于是又引入了 Dovecot-sieve , 最后的实际邮件收取处理顺序是: Postfix -> SpamAssassin -> Dovecot ->Dovecot-sieve -> 收件箱或垃圾箱 。 […]
Windows 10 Insider Preview 即将过期 每小时重启,但却没法自动升级….
2016-07-16 by Jinyang | No Comments | Filed in 技术相关一直用着 Preview版的windows10 ,这几天提示版本即将过期,将每小时重启, 让我那个郁闷啊,搜了下说是因为版本计划的原因: “ 为了让Insider测试者们保持较高的更新频度,所有“内测”(insider preview)版Windows 10系统都内置了一个“过期时间”。一旦触发,计算机将被视为非正式安装,并且被迫每隔3个小时重启一次。两周之后,系统还将会拒绝在该机启动。” 但是各种尝试升级,都是出现 windows update 意外停止 , 最终实际解决的方法: 1. 使用 WindowsUpdateDiagnostic.diagcab 修复自动升级的设置, 这个搜索下在微软官方下载即可 2. 删除未完成的更新文件(应该就是下载出错导致的后续的无法升级) ,删除 Windows\SoftwareDistribution 文件夹 ( 直接在文件夹的地址里 输入 : %windir% 然后回车,就可以访问到windows文件夹),然后在服务里 restart “windows update” 然后就可以愉快的升级了,可以看到下载比例。
discuz X3 前后台无法登陆,”密码错误次数过多,15分钟后重新登录”
2016-07-16 by Jinyang | No Comments | Filed in 技术相关网站其实没什么流量,阿里云 云主机 升级更换IP后,某一个站点一直无法登录,前后台都不行, 一直提示”密码错误次数过多,15分钟后重新登录” ,于是一直按这个思路去搜索,尝试了更新密码、清空登录失败记录等等,都不行。 实在没办法,下载了config目录的文件, 在 config_ucenter.php 中发现有配置 define(‘UC_IP’, ‘*.*.*.*); 为旧的IP, 更改为新的IP,一切恢复正常。 原来是因为多站点共用一个独立的ucenter服务,在连接ucenter时使用了配置文件中的IP。
umeditor在weblogic下上传失败的bug修复
2014-11-30 by Jinyang | No Comments | Filed in 技术相关使用umeditor上传图片时,在tomcat下正常可行的代码在部署到weblogic后报:strict servlet API: cannot call getWriter() after getOutputStream() 的错误 。 修改:imageUp.jsp 如下: <%@ page language=”java” contentType=”text/html; charset=utf-8″ pageEncoding=”utf-8″%> <%@ page import=”com.baidu.ueditor.um.Uploader”%> <% //System.out.println(“imageUp page begin”); request.setCharacterEncoding(“utf-8”); response.setCharacterEncoding(“utf-8”); String path = request.getContextPath(); String basePath = request.getScheme() + “://” + request.getServerName() + “:” + request.getServerPort() + path + “/”; String url = “http://” + request.getServerName() + “:” […]
Tags: weblogic
微信昵称中的特殊字符的过滤
2014-10-16 by Jinyang | No Comments | Filed in 技术相关/*** * 微信的昵称中特殊字符的过滤 * ***/ public static String wxNickName(String str) { // TODO Auto-generated method stub String ret = “”; try { byte[] utf8Bytes = str.getBytes(“UTF-8”); ret = new String(utf8Bytes, “UTF-8”); } catch (UnsupportedEncodingException e) { e.printStackTrace(); } Pattern unicodeOutliers = Pattern.compile(“[^\\x00-\\x7F]”, Pattern.UNICODE_CASE | Pattern.CANON_EQ | Pattern.CASE_INSENSITIVE); Matcher unicodeOutlierMatcher = unicodeOutliers.matcher(ret); //System.out.println(“Before: ” + ret); […]
Tags: 微信