Year: 2018
-

MAC 设置环境变量PATH 和 查看PATH(转载知乎文章)
理论篇 Mac系统的环境变量,加载顺序为: /etc/profile /etc/paths ~/.bash_profile ~/.bash_login ~/.profile ~/.bashrc /etc/profile和/etc/paths是系统级别的,系统启动就会加载,后面几个是当前用户级的环境变量。后面3个按照从前往后的顺序读取,如果/.bash_profile文件存在,则后面的几个文件就会被忽略不读了,如果/.bash_profile文件不存在,才会以此类推读取后面的文件。~/.bashrc没有上述规则,它是bash shell打开的时候载入的。 PATH的语法为如下 #中间用冒号隔开 export PATH=$PATH::::——: 说明: /etc/paths (全局建议修改这个文件 ) 编辑 paths,将环境变量添加到 paths文件中 ,一行一个路径 Hint:输入环境变量时,不用一个一个地输入,只要拖动文件夹到 Terminal 里就可以了。 /etc/profile (建议不修改这个文件 ) 全局(公有)配置,不管是哪个用户,登录时都会读取该文件。 /etc/bashrc (一般在这个文件中添加系统级环境变量) 全局(公有)配置,bash shell执行时,不管是何种方式,都会读取此文件 .profile 文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行.并从/etc/profile.d目录的配置文件中搜集shell的设置 使用注意:如果你有对/etc/profile有修改的话必须得重启你的修改才会生效,此修改对每个用户都生效。 ./bashrc 每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取. 使用注意 对所有的使用bash的用户修改某个配置并在以后打开的bash都生效的话可以修改这个文件,修改这个文件不用重启,重新打开一个bash即可生效。 ./bash_profile 该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该文件被读取.(每个用户都有一个.bashrc文件,在用户目录下) 使用注意 需要需要重启才会生效,/etc/profile对所有用户生效,~/.bash_profile只对当前用户生效。 source ./.bash_profile 或者 ./.profile 环境信息生效 操作篇 全局设置 创建一个文件:…
-

common_visit’ is marked as crashed and should be repaired 解决办法
错误产生原因,有网友说是频繁查询和更新dede_archives表造成的索引错误,因为我的页面没有静态生成,而是动态页面,因此比较同意这种说法。 还有说法为是MYSQL数据库因为某种原因而受到了损坏,如:数据库服务器突发性的断电、在提在数据库表提供服务时对表的原文件进行某种操作都有可能导致 MYSQL数据库表被损坏而无法读取数据。总之就是因为某些不可测的问题造成表的损坏。
-

Python 3中bytes与string的区别 文本总是用unicode进行编码以str类型表示而二进制数据以bytes类型表示
python 3中最重要的新特性可能就是将文本(text)和二进制数据做了更清晰的区分。文本总是用unicode进行编码,以str类型表示;而二进制数据以bytes类型表示。 在python3中,不能以任何隐式方式将str和bytes类型二者混合使用。不可以将str和bytes类型进行拼接,不能在str中搜索bytes数据(反之亦然),也不能将str作为参数传入需要bytes类型参数的函数(反之亦然)。 字符串和字节符之间划分界线是必然的。下面这个图解要牢记于心: strings可以被编码(encode)成字bytes,bytes也可以解码(decode)成strings: >>> ‘€20’.encode(‘utf-8′) b’\xe2\x82\xac20′ >>> b’\xe2\x82\xac20’.decode(‘utf-8’) ‘€20’ 可以这样理解: string是文本(text)的抽象表示。字符串(string)由字符组成,字符也是抽象的实体且与任何二进制表示无关。 当操纵字符串的时候,很多细节是不用了解的。我们可以分割、切片和拼接字符串,在字符串内部进行搜索。但并不在乎内部是如何表示的,也不用在意底层一个字符要花费多少byte。 只有在需要将string编码(encode)成byte的时候,比如:通过网络传输数据;或者需要将byte解码(decode)成string的时候,我们才会关注string和byte的区别。 传入encode和decode的参数是编码方式。编码是一种用二进制数据表示抽象字符的方式。目前有很多种编码。上面给出的UTF-8是其中一种,下面是另一种: >>> ‘€20’.encode(‘iso-8859-15′) b’\xa420′ >>> b’\xa420’.decode(‘iso-8859-15’) ‘€20′ 编码是这个转换过程中至关重要的一部分。若不编码,bytes对象b’\xa420’只是一堆比特位而已。编码赋予其含义。采用不同的编码,这堆比特位的含义就会大不同: >>> b’\xa420’.decode(‘windows-1255’) ‘₪20’ https://eli.thegreenplace.net/2012/01/30/the-bytesstr-dichotomy-in-python-3 相关阅读: https://moneyslow.com/mac%E4%B8%8Bpycharm%E5%BF%AB%E6%8D%B7%E9%94%AE%E5%A4%A7%E5%85%A8.html
-

Mac下组织工作区的工具magnet 整理工作空间
官方网站:http://magnet.crowdcafe.com 当您每次将内容从一个应用移动到另一应用时,当您需要并排比较数据时,或是以其他方式进行多任务处理时,你需要妥善放置所有窗口。Magnet 让这一过程清爽又简单。 拖动窗口到边缘,可将窗口大小调整到屏幕的一半。拖动窗口到角落,可将窗口缩小到屏幕的四分之一。将窗口滑动到显示器的底部边缘可创建三等分宽度的窗口。用同样的方法,可在您的超宽显示器。上将窗口六分。充分利用此类布局可实现无需应用切换,并大大提高工作区效率。 Magnet 同时支持键盘快捷方式,可顺利适配所有命令。您可通过菜单栏上的小图标,找到预定设置或创建自己的设置集。 特性: 支持左/右/顶部/底部1/2分屏 支持左/中/右1/3分屏 支持左侧2/3和右侧2/3分屏超宽屏幕_支持任何六分组合 支持全屏以及四个角落的1/4分屏通过拖动激活(可选) 通过键盘快捷键激活(可自定义)通过菜单栏图标操作支持 Retina 和普通显示器支持多达 6 台外部显示器支持垂直屏显 支持 macOS 10.9 Mavericks 以上的所有版本为 macOS 10.14 Mojave 进行优化
-

阿里云免费邮箱申请使用方法
2023年1月28日更新:以下文章内容是旧的,文中链接已经失效,阿里云不再提供免费邮箱服务。大家可以看我最新写的网易的免费邮箱的方法,文章地址:《自己的域名建立免费的企业邮箱》 ######################## 以下内容已经失效 ####################### 哪个页面是阿里云免费邮箱的地址? 好吧,你肯定有疑惑了,点进去的都是收费邮箱的界面,其实阿里云一直有免费的邮箱使用。 直接点击这个链接: 看到了吧: 点击立即抢购: 嗯,很好,0元立即购买吧,接下来就是一路确认。 再次进入控制台,发现你的企业邮箱免费版已经有了。 要想使用的话,做一系列dns的设置和密码设置,就开始使用吧。
-
JWS has invalid anti-replay nonce
错误标识:urn:acme:error:badNonce 该错误表示在操作过程中与上一次请求超时引起的前面生成的随机码过期或无效。 错误原因 该错误表示在操作过程中与上一次请求超时引起的前面生成的随机码过期或无效。JWS每次采用上一次生成的随机码,在Let’s Encrypt的ACME 即请求是返回的Replay-Nonce信息,这个信息具有一定的有效期,一旦过期将不可用,导致下一步请求失败。 解决方案 重试即可。在Easy Https中系统将自动重试一次,如果仍不成功,用户可在失败后,返回列表重新发起生成即可。
-

-

-

-

-

-

openssl命令查看证书细节
openssl x509部分命令打印出证书的内容:openssl x509 -in cert.pem -noout -text打印出证书的系列号openssl x509 -in cert.pem -noout -serial打印出证书的拥有者名字openssl x509 -in cert.pem -noout -subject以RFC2253规定的格式打印出证书的拥有者名字openssl x509 -in cert.pem -noout -subject -nameopt RFC2253在支持UTF8的终端一行过打印出证书的拥有者名字openssl x509 -in cert.pem -noout -subject -nameopt oneline -nameopt -escmsb打印出证书的MD5特征参数openssl x509 -in cert.pem -noout -fingerprint打印出证书的SHA特征参数openssl x509 -sha1 -in cert.pem -noout -fingerprint把PEM格式的证书转化成DER格式openssl x509 -in cert.pem -inform PEM -out cert.der -outform DER把一个证书转化成CSRopenssl x509 -x509toreq…
-
https ssl 服务器证书术语解释
EV EV证书(Extended Validation Certificate)是一种根据一系列特定标准颁发的X.509电子证书,根据要求,在颁发证书之前,证书颁发机构(CA)必须验证申请者的身份。不同机构根据证书标准发行的扩展验证证书并无太大差异,但是有时候根据一些具体的要求,特定机构发行的证书可以被特定的软件识别 OV OV证书(Organization Validation SSL),指需要验证网站所有单位的真实身份的标准型SSL证书,此类证书不仅能够起到网站信息加密的作用,而且能向用户证明网站的真实身份。 DV DV证书(Domain Validation SSL),指需要验证域名的有效性。该类证书只提供基本的加密保障,不能提供域名所有者的信息。 HPKP 公钥固定,这是一种https网站防止攻击者使用CA错误颁发的证书进行中间人攻击的一种安全机制,用于预防诸如攻击者入侵CA偷发证书、浏览器信任CA签发伪造证书等情况,采用该机制后服务器会提供一个公钥哈希列表,客户端在后续的通信中只接受该列表上的一个或多个公钥。HPKP是一个响应头 Public-Key-Pins:max-age=xxx;pin-sha256=xxxx;includeSubDomains; 其中可以使用多个pin-sha256,pin-sha256的值是对证书公钥sha256的值,includeSubDomains决定是否包含所有子域名,在max-age所指定的时间内(秒),证书链中的证书至少一个公钥须和固定公钥相符,这样客户端才认为该证书链是有效的。 还有一种响应头: Public-Key-Pins-Report-Only:max-age=xxx;pin-sha256=xxxx;includeSubDomains;report-uri=xxx Public-Key-Pins-Report-Only中的report-uri,决定是否回报违反HTTP公钥固定策略的事件。客户端进行HTTP公钥固定验证失败后,将把此次错误详情以JSON格式回报个report-uri参数中指定的服务器。 CAA CAA : DNS Certification Authority Authorization,使用DNS来指定该域名可以由哪些CA机构签发证书,这不是为TLS层的安全提供保证,而是作为CA签发证书程序中的一部分。使用CAA可以避免一些CA签发错误证书的情况。 SNI SNI(服务器名称指示),这个是一个扩展的TLS协议,在该协议中,在TLS握手过程中客户端可以指定服务器的主机名称,这允许服务器在相同的IP和端口上部署多个证书,并允许在相同的IP地址上提供多个HTTPS网站或者基于TLS的服务。 ALPN ALPN(应用层协议协商 Application-Layer Protocol Negotiation) 是一个进行应用层协议协商的传输层安全协议(TLS)扩展,ALPN允许应用层协商应该在安全连接上实行哪个协议,以避免额外且独立于应用层协议的往返协商通信。它已被HTTP/2使用。 NPN NPN(Next Protocol Negotiation) 下一协议协商,在TLS上允许应用层协商使用哪个协议,在2014年7月11日的RFC 7301中使用ALPN代替NPN h2 HTTP/2 的协议名称,口语叫法HTTP2和http/1.1 是一个概念,通过ALPN协商。 HTTP/2 中只能使用 TLSv1.2+协议。 CSR CSR(Certificate Signing Request),在PKI系统中,CSR文件必须在申请和购买SSL证书之前创建,也就是证书申请者在申请数字证书时由CSP(加密服务提供者)在生成私钥的同时也生成证书请求文件,证书申请者只要把CSR文件提交给证书颁发机构后,证书颁发机构使用其根证书私钥签名就生成了证书公钥文件 CT CT (Certificate Transparency)…
-
域名常见的状态 pendingDelete pendingTransfer clientHold
域名各个状态说明: Ø 以client开头的状态表示由客户端(注册商)可以增加的状态; Ø 以server开头的状态表示服务器端(注册局)操作增加的状态。 ok 正常状态 inactive 非激活状态(注册的时候没有填写域名服务器,不能进行解析) clientDeleteProhibited 禁止删除 serverDeleteProhibited 禁止删除 clientUpdateProhibited 禁止修改 serverUpdateProhibited 禁止修改 pendingDelete 正在删除过程中 pendingTransfer 正在转移过程中 clientTransferProhibited 禁止转移 serverTransferProhibited 禁止转移 clientRenewProhibited 禁止续费 serverRenewProhibited 禁止续费 clientHold 停止解析 serverHold 停止解析 pendingVerification 注册信息正在确认过程中 由于各种类型域名的注册管理机构的不同,域名状态的显示也会略有不同。
-

如何让 Chrome 支持 WebGL ?
如何判断:访问https://get.webgl.org/ ,出现 You browser supports WebGL 1“字样,说明浏览器已经开启了WebGL: 不支持的话: 1、显卡不算烂的情况下:在Chrome的高级设置里开启“硬件加速”即可。 2、显卡比较烂的情况下:因为Chrome内置了一套显卡黑名单,如果你的显卡太烂,WebGL就会被默认禁用,因此需要强制开启。强制开启的方法是:首先要和1一样先开启“硬件加速”,然后在地址栏输入”chrome://flags”并回车打开Chrome的实验功能,启用Override software rendering list 选项,然后重启Chrome。
-

基于MongoDB2.6版本配置MongoDB主从复制集群架构
1:集群环境说明:mongodb1:192.168.43.10、mongodb2:192.168.43.11、mongodb3:192.168.43.12。且基于主机名相互通信/etc/hosts文件(为了集群信息同步不出现问题,先关闭认证功能anth) 2:编辑mongodb1的/etc/mongod.conf文件,注释auth指令,添加如下内容 指定副本集的名称 replSet=uplooking 指定预拷贝的索引,这里只拷贝id那个系统自动生成的索引 replIndexPrefetch=_id_only noauth=true 3:将mongodb1的配置文件拷贝到mongodb2、mongodb3 scp /etc/mongod.conf 192.168.43.11:/etc/ scp /etc/mongod.conf 192.168.43.12:/etc/ 3:启动mongodb1、mongodb2、mongodb3 4:登入mongodb1的shell接口 rs.status(); (查看集群中的节点状态) rs.initiate();(初始化副本集) rs.status();(再次查看集群中的节点状态) uplooking:PRIMARY> (此时的提示符已经变了) 5:当初始化了主节点以后,需要添加其他的从节点到mongodb集群中来 uplooking:PRIMARY> rs.add(“192.168.43.11”) uplooking:PRIMARY> rs.add(“192.168.43.12”) 6:添加了其他节点以后,就可以查看配置信息和副本集的状态信息 uplooking:PRIMARY> rs.conf() { “_id” : “uplooking”, “version” : 3, “members” : [ { “_id” : 0, “host” : “mongodb1:27017” }, { “_id” : 1, “host” : “192.168.43.11:27017″…
-

-
wordpress 新编辑器–古腾堡
WordPress官方发布了新的编辑器,但现在还没有内置到WordPress核心代码里,是以插件形式发布的,名称叫:Gutenberg。 Gutenberg,中文音译:古滕堡。约翰·古腾堡(Johannes Gensfleisch zur Laden zum Gutenberg,1398年—1468年2月3日),又译作“古登堡”以及“古腾贝格”,德国发明家,约1400年出生于德国美因茨,1468年2月3日逝世于美因茨,是西方活字印刷术的发明人,他的发明导致了一次媒体革命,迅速地推动了西方科学和社会的发展。 一图胜过千言万语 除了标题之外,,每个段落都是一个模块化的,想要换行,直接点击新增一个模块并且写内容进去即可,功能增强最多的是 insert 的功能,通过这里可以对文章进行任何形式的编辑,最右侧边栏是传统的标签,分类,特色图片等,点击 pubish就发布了,在WordPress前台就可以看到了,发布出来的内容和从写文章里的一摸一样。 这款插件虽然功能更新迅速,但按照WordPress官方的计划,这款插件真正要集成的WordPress程序中,大概是在WordPress 5.0 发布的时候。应该还需要不少时间来测试,毕竟这个将是WordPress未来的核心功能。 欢迎测试 Gutenberg!
-

扯闲篇,公共WIFI安全上网的6个建议
1.了解哪些公共网络值得信任 没有公共Wi-Fi网络是绝对安全的,这取决于Wi-Fi提供方和谁可以接入网络。在安全性方面,那些随机弹出的公共Wi-Fi网络,或由从未听说过的第三方运营的网络,都很不安全。这些网络可能是合法的,但如果任何路人都可以免费联网,那幺运营网络的人有什么好处呢?如何赚钱呢? 如果可以,请尽可能少地使用公共Wi-Fi网络。例如,在城市中,可以在以前使用过Wi-Fi的商店或咖啡店中连接网络。用户注册的网络越多,就越有可能不小心登入不安全的Wi-Fi网络。 2.尽量访问HTTPS的网站 截至几周前,Google Chrome通过标记「不安全」,让用户知道所访问的网站是使用加密的HTTPS连接,而不是未加密的HTTP。需要注意谷歌浏览器这个警告,尤其是在使用公共Wi-Fi时。当你浏览HTTPS网页时,同一Wi-Fi网络上其他人无法窥探你与所连接网站服务器之间的数据传输。而使用HTTP,很容易数据泄露。 3.不提供太多个人信息 如果在注册登录公共Wi-Fi时,被要求提供大量个人详细信息,例如电子邮件地址或电话号码等信息,务必当心! 如果你必须连接到这样的网络,请考虑用不重要的电子邮件地址注册。再次,尽可能少地注册不同的公共Wi-Fi平台,可以先查查手机或有线电视运营商是否在你当前位置提供免费Wi-Fi热点。如果可以通过已注册的服务上网,可以减少个人详细信息泄露的机会。 4.限制AirDrop和文件共享 当使用公共网络时,用户最好切断自己电子设备上文件共享功能。如果使用的是PC,可进入网络和共享中心,然后更改高级共享设置,然后关闭文件和打印机共享。对于Mac电脑,请转到「系统偏好设置」,然后转到「共享」,再取消选择所有属性。然后前往Finder,点击AirDrop,然后选择「No One」。对于iOS,只须在控制中心找到AirDrop并将其关闭即可。 5.检查要注册的属性 在连接到公共Wi-Fi连接之前,请阅读附加条款和条件。你可能无法理解每一个字,但应该能够发现任何重大的危险信号,尤其是他们想搜集什么样的数据,以及他们正在做什么等信息。当然,条款和条件本身并不存在任何恶意,它们也有助于保护Wi-Fi提供商,但不要盲目点击任何弹出屏幕。如果被要求安装任何额外软件,请拒绝安装。 6.使用VPN 到目前为止,保持公共Wi-Fi安全的最有效方法是在自己的设备上安装VPN或虚拟专用网客户端。如此以来,便可加密进出笔记本电脑或手机的数据,并连接到安全的服务器。(本文由moneyslow.com发布)实际上连接到VPN通常很简单,一旦从提供商那下载了客户端,无论是在移动设备还是桌面设备上,都会逐步完成安装整个过程。如果用户需要到处走动,并连接到许多不同网络。同样,避免因公共Wi-Fi而遇到安全问题的最佳方法是不要使用它,例如,在离开家之前考虑下载视频和音乐以进行离线访问,或者使用智能手机的热点功能。如果你打算连接公共Wi-Fi,上面提到几个方法应该可以帮助用户在一定程度地避免麻烦。
-
12个免费获取https证书的方法
必须开始用https的原因: 1、2017年1月1日起,苹果App Store中的所有App都必须启用 App Transport Security(简称ATS)安全功能。ATS(应用程序安全传输),是苹果在 iOS 9 中首次推出的一项隐私安全保护功能,启用ATS后,它会屏蔽明文HTTP资源加载,强制App通过HTTPS连接网络服务,通过传输加密保障用户数据安全。如果你正在开发微信小程序,微信一样要求你的网址具备SSL证书才能审核通过。在本文中,我们将向您展示如何轻松获得免费的SSL证书。 2、从2018年9月1日开始,Chrome将显示所有未使用SSL证书的网站标记为“不安全”,而拥有SSL证书的网站的权重排名都会获得提升。 一、SSL科普 SSL证书是数字证书的一种,类似于驾驶证、护照和营业执照的电子副本。因为配置在服务器上,也称为SSL服务器证书。 它是一种用于保护用户浏览器与其访问的网站之间的数据传输的互联网协议。 每个互联网用户在访问网站时都会传输信息。通常来说此类信息很敏感,如付款支付,信用卡信息或登录账号密码以及发送安全电子邮件、访问安全站点、网上招标与投标、网上签约、网上订购、安全网上公文传送、网上办公、网上缴费、网上缴税以及网上购物等。 使用普通的HTTP协议意味着这些信息可能会被黑客劫持。所以,这正是SSL或HTTPS的用武之地。 使用SSL的网站需要由一个公认的证书颁发机构颁发的SSL证书。此证书会在用户的浏览器地址栏中使用挂锁符号和HTTPS进行突出显示。 二、我的网站需要SSL证书吗? 如果你的网站涉及正在开展电子商务、会员服务等交易服务或者有重要的信息(如登录账号,付款详细信息,信用卡信息等),建议Internet上的所有网站使用SSL / HTTPS,对于电子商务网站,基本上所有网站都需要它。 1.如果你的网站想要取得更高的排名与权重,你的网站也需要通过SSL。搜索引擎优先HTTPS网站,2014年 Google 调整了搜索引擎算法,“比起同等 Http 网站,采用 Https 加密的网站在搜索结果中的排名将会更高”,同时国内的搜索引擎厂商也在加强对 Https 的重视,采用 Https 可以辅助站点的 SEO 优化,其中官方公开说明的还有百度。 2.向你的客户保证你是可信的,除了安全性之外,SSL证书还会在您的用户中产生对您的品牌的积极印象。 3.防劫持(全站Https有助于防止HTTP协议劫持,流量劫持)。 4.可顺利通过苹果APP在苹果应用商店的上线。 5.顺利通过微信小程序开发上线。 最后,如果你的网站没有使用SSL,Google Chrome会向您的用户显示您的网站不安全。 三、SSL证书是如何工作的? SSL通过加密浏览器和网站之间的数据传输来保护信息。当用户访问SSL / HTTPS网站时,他们的浏览器首先会验证网站的SSL证书是否有效。 当客户端的浏览器到达网站的服务器并注意到它有SSL时,它开始一个名为“ SSL握手 ” 的过程。这是客户端和服务器决定他们将使用的加密方式(哪些算法和密码) – 基本上是加密的方向),验证服务器,然后交换对称的会话密钥。 一旦交换了会话密钥,两者就开始以只有另一方可以读取它的方式进行编码通信。这可以防止来自第三方的窃听,内容注入以及一连串其他潜在问题。 12个获得免费的SSL证书的方法 ①阿里云.SSL证书服务 通过阿里云SSL证书服务可以获得由Symantec(赛门铁克)提供的免费型DV SSL,为期一年。一个阿云帐户最多签发20张免费证书。支持一键将数字证书部署在阿里云已经开通的云产品中(SLB、Web应用防火墙、DDoS高防IP、CDN),以最小成本在云上应用,统一管理,方便使用。 网址:https://www.aliyun.com…
-

ImageMagick、imagick、ghostscript三者关系
一、功能概述 ImageMagick是第三方的图片处理软件,功能要比GD强大。建议两者都安装,并不冲突。 imagick是php的一个扩展模块,它调用ImageMagick提供的API来进行图片的操作。 Ghostscript是一套建基于Adobe、PostScript及可移植文档格式(PDF)的页面描述语言等而编译成的免费软件。 Ghostscript最初是以商业软件形式在PC市场上发售,并称之为“GoScript”。但由于速度太慢(半小时一版A4),销量极差。后来有心人买下了版权,并改在Linux上开发,成为了今日的Ghostscript。 已经从Linux版本移植到其他操作系统,如其他Unix、Mac OS X、VMS、Windows、OS/2和Mac OS classic。 ImageMagick无法直接实现pdf文档到图片的转换,需要借助于gostscript软件包 二、安装方式 1、编译安装ImageMagick # tar xf ImageMagick-6.8.9-9.tar.gz # cd ImageMagick-6.8.9-9 # ./configure –prefix=/usr/local/imagemagick # make && make install 编译安装完成之后记得配置./convert的环境变量 2、编译安装imagick # tar -xf imagick-3.2.0RC1.tgz # cd imagick-3.2.0RC1 # /usr/local/php/bin/phpize # ./configure –with-php-config=/usr/local/php/bin/php-config –with-imagick=/usr/local/imagemagick # make && make install 3、编译安装Ghostscript # tar xf ghostscript-9.02.tar.gz # cd…
-
Nginx的SSL模块配置和https配置
Nginx如果未开启SSL模块,配置Https时提示错误nginx: [emerg] the “ssl” parameter requires ngx_http_ssl_module in /usr/local/nginx/conf原因也很简单,nginx缺少http_ssl_module模块,编译安装的时候带上–with-http_ssl_module配置就行了,但是现在的情况是我的nginx已经安装过了,怎么添加模块,其实也很简单,往下看: 做个说明:我的nginx的安装目录是/usr/local/nginx这个目录,我的源码包在/usr/local/src/nginx-1.6.2目录nginx: [emerg] the “ssl” parameter requires ngx_http_ssl_module in /usr/local/nginx/conf/nginx.conf:37Nginx开启SSL模块切换到源码包:cd /usr/local/src/nginx-1.11.3查看nginx原有的模块/usr/local/nginx/sbin/nginx -V在configure arguments:后面显示的原有的configure参数如下:–prefix=/usr/local/nginx –with-http_stub_status_module那么我们的新配置信息就应该这样写:./configure –prefix=/usr/local/nginx –with-http_stub_status_module –with-http_ssl_module运行上面的命令即可,等配置完成后,运行命令make这里不要进行make install,否则就是覆盖安装然后备份原有已安装好的nginxcp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak然后将刚刚编译好的nginx覆盖掉原有的nginx(这个时候nginx要停止状态)cp ./objs/nginx /usr/local/nginx/sbin/然后启动nginx,仍可以通过命令查看是否已经加入成功/usr/local/nginx/sbin/nginx -VNginx 配置Http和Https共存 server { listen 80 default backlog=2048; listen 443 ssl; …
-

25条最实用的Iptables 规则
1、启动、停止和重启IPTables虽然 IPTables 并不是一项服务,但在 Linux 中还是可以像服务一样对其状态进行管理。基于SystemD的系统systemctl start iptablessystemctl stop iptablessystemctl restart iptables基于SysVinit的系统/etc/init.d/iptables start/etc/init.d/iptables stop/etc/init.d/iptables restart 2、查看IPtables防火墙策略你可以使用如下命令来查看 IPtables 防火墙策略:iptables -L -n -v以上命令应该返回数据下图的输出:以上命令是查看默认的 FILTER 表,如果你只希望查看特定的表,可以在 -t 参数后跟上要单独查看的表名。例如只查看 NAT 表中的规则,可以使用如下命令:iptables -t nat -L -v –n 3、屏蔽某个IP地址如果你发布有某个 IP 向服务器导入攻击或非正常流量,可以使用如下规则屏蔽其 IP 地址:iptables -A INPUT -s xxx.xxx.xxx.xxx -j DROP注意需要将上述的 XXX 改成要屏蔽的实际 IP 地址,其中的 -A 参数表示在 INPUT 链的最后追加本条规则。(IPTables 中的规则是从上到下匹配的,一旦匹配成功就不再继续往下匹配)如果你只想屏蔽 TCP 流量,可以使用 -p 参数的指定协议,例如:iptables…
-

Google Chrome 版本 68.0.3440.75(正式版本)发布了,看看tomcat怎么配置https证书
安装证书 Tomcat支持JKS格式证书,从Tomcat7开始也支持PFX格式证书,两种证书格式任选其一。 文件说明: 1. 证书文件214850129130445.pem,包含两段内容,请不要删除任何一段内容。 2. 如果是证书系统创建的CSR,还包含:证书私钥文件214850129130445.key、PFX格式证书文件214850129130445.pfx、PFX格式证书密码文件pfx-password.txt。 1、证书格式转换 在Tomcat的安装目录下创建cert目录,并且将下载的全部文件拷贝到cert目录中。如果申请证书时是自己创建的CSR文件,附件中只包含214850129130445.pem文件,还需要将私钥文件拷贝到cert目录,命名为214850129130445.key;如果是系统创建的CSR,请直接到第2步。 到cert目录下执行如下命令完成PFX格式转换命令,此处要设置PFX证书密码,请牢记: openssl pkcs12 -export -out 214850129130445.pfx -inkey 214850129130445.key -in 214850129130445.pem 2、PFX证书安装 找到安装Tomcat目录下该文件server.xml,一般默认路径都是在 conf 文件夹中。找到 <Connection port=”8443″标签,增加如下属性: keystoreFile=”cert/214850129130445.pfx” keystoreType=”PKCS12″ #此处的证书密码,请参考附件中的密码文件或在第1步中设置的密码 keystorePass=”证书密码” 完整的配置如下,其中port属性根据实际情况修改: <Connector port=”8443″ protocol=”HTTP/1.1″ SSLEnabled=”true” scheme=”https” secure=”true” keystoreFile=”cert/214850129130445.pfx” keystoreType=”PKCS12″ keystorePass=”证书密码” …
-
chrome 68.0.3440.75(正式版本)发布了,所有http都是不安全,看看apache怎么配置证书?
假设你得到了证书: 214850129130445.pem 214850129130445.key 文件说明: 1. 证书文件214850129130445.pem,包含两段内容,请不要删除任何一段内容。 2. 如果是证书系统创建的CSR,还包含:证书私钥文件214850129130445.key、证书公钥文件public.pem、证书链文件chain.pem。 ( 1 ) 在Apache的安装目录下创建cert目录,并且将下载的全部文件拷贝到cert目录中。如果申请证书时是自己创建的CSR文件,请将对应的私钥文件放到cert目录下并且命名为214850129130445.key; ( 2 ) 打开 apache 安装目录下 conf 目录中的 httpd.conf 文件,找到以下内容并去掉“#”: #LoadModule ssl_module modules/mod_ssl.so (如果找不到请确认是否编译过 openssl 插件) #Include conf/extra/httpd-ssl.conf ( 3 ) 打开 apache 安装目录下 conf/extra/httpd-ssl.conf 文件 (也可能是conf.d/ssl.conf,与操作系统及安装方式有关), 在配置文件中查找以下配置语句: # 添加 SSL 协议支持协议,去掉不安全的协议 SSLProtocol all -SSLv2 -SSLv3 # 修改加密套件如下 SSLCipherSuite HIGH:!RC4:!MD5:!aNULL:!eNULL:!NULL:!DH:!EDH:!EXP:+MEDIUM SSLHonorCipherOrder on #…
-

版本 68.0.3440.75(正式版本)发布了,看看nginx怎么配置?
假设你得到了证书: 214850129130445.pem 214850129130445.key 文件说明: 1. 证书文件214850129130445.pem,包含两段内容,请不要删除任何一段内容。 2. 如果是证书系统创建的CSR,还包含:证书私钥文件214850129130445.key。 ( 1 ) 在Nginx的安装目录下创建cert目录,并且将下载的全部文件拷贝到cert目录中。如果申请证书时是自己创建的CSR文件,请将对应的私钥文件放到cert目录下并且命名为214850129130445.key; ( 2 ) 打开 Nginx 安装目录下 conf 目录中的 nginx.conf 文件,找到: # HTTPS server # #server { # listen 443; # server_name localhost; # ssl on; # ssl_certificate cert.pem; # ssl_certificate_key cert.key; # ssl_session_timeout 5m; # ssl_protocols SSLv2 SSLv3 TLSv1; # ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP; #…
-

nginx反向代理配置
1.nginx负载均衡 网站的访问量越来越大,服务器的服务模式也得进行相应的升级,比如分离出数据库服务器、分离出图片作为单独服务,这些是简单的数据的负载均衡,将压力分散到不同的机器上。有时候来自web前端的压力,也能让人十分头痛。怎样将同一个域名的访问分散到两台或更多的机器上呢?这其实就是另一种负载均衡了,nginx自身就可以做到,只需要做个简单的配置就行。 nginx不单可以作为强大的web服务器,也可以作为一个反向代理服务器,而且nginx还可以按照调度规则实现动态、静态页面的分离,可以按照轮询、ip哈希、URL哈希、权重等多种方式对后端服务器做负载均衡,同时还支持后端服务器的健康检查。 Nginx负载均衡一些基础知识: nginx 的 upstream目前支持 4 种方式的分配 1)、轮询(默认) 每个请求按时间顺序逐一分配到不同的后端服务器,如果后端服务器down掉,能自动剔除。 2)、weight 指定轮询几率,weight和访问比率成正比,用于后端服务器性能不均的情况。 2)、ip_hash 每个请求按访问ip的hash结果分配,这样每个访客固定访问一个后端服务器,可以解决session的问题。 3)、fair(第三方) 按后端服务器的响应时间来分配请求,响应时间短的优先分配。 4)、url_hash(第三方) 2.nginx负载均衡配置,主要是proxy_pass,upstream的使用 在http段做如下配置,即可实现两个域名 upstream www.moneyslow.com { server 10.0.1.50:8080; server 10.0.1.51:8080; } upstream blog.moneyslow.com { server 10.0.1.50:8080; server 10.0.1.51:8080; } server { listen 80;…
-

Centos/AS4U8系统使用代理上网 yum的代理设置
1.打开/etc/yum.conf 配置文件进行编辑 在后面添加以下内容(ip号+端口后无认证连接) proxy=http://192.168.5.100:8086 如果需要认证连接则输入以下内容 proxy=http://192.168.5.100:8086 proxy_username=代理服务器用户名 proxy_password=代理服务器密码 那怎么设置全局代理上网呢? 以上只是针对某些软件代理而已。 打开etc/skel/.bash_profile进行编辑 http_proxy=http://192.168.5.100:8080 https_proxy=http://192.168.5.100:8080 export http_proxy https_proxy 执行source etc/skel/.bash_profile马上更新 执行wget http://www.baidu.com执行测试
-

求两个Linux文本文件的交集、差集、并集
一、交集 sort a.txt b.txt | uniq -d 二、并集 sort a.txt b.txt | uniq 三、差集 a.txt-b.txt: sort a.txt b.txt b.txt | uniq -u b.txt – a.txt: sort b.txt a.txt a.txt | uniq -u 四、相关的解释 使用sort可以将文件进行排序(sort排序是为了管道交给uniq进行处理,uniq只能处理相邻的行),可以使用sort后面的参数,例如 -n 按照数字格式排序,例如 -i 忽略大小写,例如使用-r 为逆序输出等 uniq为删除文件中重复的行,得到文件中唯一的行,参数-d 表示的是输出出现次数大于1的内容;参数-u表示的是输出出现次数为1的内容;那么对于上述的求交集并集差集的命令做如下的解释: sort a.txt b.txt | uniq -d:将两个文件进行排序,uniq使得两个文件中的内容为唯一的,使用-d输出两个文件中次数大于1的内容,即是得到交集 sort a.txt b.txt | uniq :将两个文件进行排序,uniq使得两个文件中的内容为唯一的,即可得到两个文件的并集 sort a.txt…
-

shell:读取文件的每一行内容并输出
写法一: —————————————————————————- #!/bin/bash while read line do echo $line done < file(待读取的文件) —————————————————————————- 写法二: —————————————————————————- #!/bin/bash cat file(待读取的文件) | while read line do echo $line done —————————————————————————- 写法三: —————————————————————————- for line in `cat file(待读取的文件)` do echo $line done —————————————————————————- 说明: for逐行读和while逐行读是有区别的,如: $ cat file aaaa bbbb cccc dddd $ cat file |…
-

centos7.4 yum 安装mysql5.7
使用wget下载官方yum源的rpm包: wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm 安装rpm包: rpm -ivh mysql57-community-release-el7-11.noarch.rpm yum来安装mysql-server: yum install -y mysql-server 启动mysqld服务: systemctl start mysqld 查看是否成功启动: ps aux|grep mysqld 设置mysqld服务开机自启动: systemctl enable mysqld 使用初始密码登录 由于MySQL从5.7开始不允许首次安装后,使用空密码进行登录,系统会随机生成一个密码以供管理员首次登录使用,这个密码记录在/var/log/mysqld.log文件中,使用下面的命令可以查看此密码: [root@bjlianyi wordpress]# cat /var/log/mysqld.log|grep ‘A temporary password’ 2018-06-29T15:08:12.364210Z 1 [Note] A temporary password is generated for root@localhost: f<%qrUl/f0lG [root@bjlianyi wordpress]# mysql ERROR 1045 (28000): Access denied for user ‘root’@’localhost’…
-

dns的一些常见问题
域名解析 1域名从原解析服务器迁移至DNS云服务需要做哪些工作? 建议在域名迁移之前和DNS云服务工程师充分沟通,迁移过程大致分为3个步骤: 首选将原解析服务器上的解析区数据导出,然后导入DNS云服务。 核对导入DNS云服务的数据是否和原解析服务器一致,确保数据无误。 修改域名NS记录,完成域名迁移。 注:整个迁移过程将由DNS技术支持工程师一对一全程跟踪协助,确保迁移过程中业务0中断。 2原解析服务器有很多的解析记录,不想一条一条配置,如何才能准确快速的导入DNS云服务? DNS云服务支持区文件导入,可以一次导入所有解析记录。如果您原解析服务器上区文件格式比较特殊,需要按DNS云服务能够支持的格式整理以后,方可顺利导入。您可以向DNS云服务技术支持工程师索要标准格式模板,或者将原始区文件发给DNS云服务工程师代为整理。 3修改域名NS记录,多久能生效? 新修改域名NS记录后,在DNS云服务解析平台上是实时同步到全球所有节点上的,但是各地运营递归服务器缓存需要等到TTL过期后才会生效,时间并不一致,所以在全球生效一般需要0—48小时,请耐心等待。 4如何确定域名已经在DNS云服务解析了? 修改NS记录48小时以后,可以使用nslookup等测试工具,测试域名的NS记录是否变更为DNS云服务的域名。具体步骤为: 在windows系统开始菜单中找到命令提示符程序并且运行。 在命令提示符窗口中输入`nslookup`回车运行。 输入 set type=NS,指定查询类型为NS记录。 输入要查询的域名,如zdns.cn,注意此处输入的是在DNS云服务上解析的根域名,不要加任何主机名,得到如下结果: nslookup > set type=NS > zdns.cn Server: 10.0.0.1 Address: 10.0.0.1#53 Non-authoritative answer: zdns.cn nameserver = vns1.zdnscloud.biz. zdns.cn nameserver = ins1.zdnscloud.com. zdns.cn nameserver = dns1.zdnscloud.info. zdns.cn nameserver = cns1.zdnscloud.net. 5DNS云服务都支持哪些记录类型? DNS云服务支持A、AAAA、CNAME、DNAME、MX、PTR、SRV、TXT、SPF、CAA等常见记录类型,还支持AW、AAAAW、CNAMEW、XW、LNAME等带权重记录类型。 6修改域名解析记录多久会生效? 修改域名解析记录,在各地运营商LocalDNS上的生效时间理论上是解析记录配置的TTL时间,但是可能有少部分地区的运营商强制设定了更长的TTL时间。 7子域名支持多少级? 域名级别演示如下: 顶级域名:cn、com、org、net、gov 二级域名:zdns.cn、example.com、example.net…
-
DedeCMS V5.7 SP2正式版
发布日期: 2018-01-09 安装包文件MD5: DedeCMS-V5.7-GBK-SP2-Full.tar.gz: MD5 b38c4e2a53d4cd2eaab49e970b1e909e DedeCMS-V5.7-GBK-SP2.tar.gz: MD5 07682cbfeba09acd6f1f8e8e4ffa0cc0 DedeCMS-V5.7-UTF8-SP2-Full.tar.gz: MD5 5de2c4a6f466df1229de4bcd090e1739 DedeCMS-V5.7-UTF8-SP2.tar.gz: MD5 19644d7839cf203d125fd90294f0cf56 完整版下载(含带所有模块):UTF-8版本 GBK版本 链接自己拼:http://www.moneyslow.com/soft/ DedeCMS-V5.7-GBK-SP2-Full.tar.gz DedeCMS-V5.7-UTF8-SP2.tar.gz DedeCMS-V5.7-GBK-SP2.tar.gz DedeCMS-V5.7-UTF8-SP2-Full.tar.gz
-

discuz x3.4邮件发送返回错误信息解决办法
1.后台设置问题-站长-邮箱设置 这个简单,smtp前面加ssl://,然后端口改成465,其他跟以前一样, 还有一点是密码那里有的邮箱要填密码,例如gmail,有的邮箱要填授权码之类的,例如163 2.配置问题 win系统+IIS环境下,开启(开启方法是php.ini文件找到如下,把前面分号去掉就可以) allow_url_fopen = On extension=php_openssl.dll
-

SMTP/MTA设置四大错误 & AuthAccount常见错误码
一、发信程序有问题,连接不上服务器或者遇到收件人不存在导致程序抛异常等其他错误,参考发信模板,支持Java,C#,NodeJS,Python,PHP,Perl,Ruby,Go,https://help.aliyun.com/document_detail/29450.html?spm=a2c4g.11186623.6.587.dr3CZJ,用户看了说明文档后还是解决不了再找我 二、邮件内容被修改,这种问题一定是客户端问题或者是中间链路被转发时出了问题,阿里邮箱承诺不会修改用户邮件内容,大客户可免费提供技术排查 三、smtp非加密端口25,加密端口465,ECS封禁了25和465端口,但炳琪开了一个80端口,可供ECS上用户使用发信,遇到ECS用户反馈连接不上可建议连接80端口;另外,SMTP不支持Starttls 四、错误码问题,参考下面错误码(请自动在SLS搜索拿到指纹,下面帮助文档解决不了的可联系我) smtp账号认证相关的错误: 发件人 and logtpye:15103 smtp其他错误:logtype:12006 and 发件人 and 收件人 mta相关错误:logtype:11005 and 发件人 and 收件人 那么如何确认一个邮件被阿里接收呢,拿到指纹后搜 fingerprint and 12008(SMTP)或者fingerprint and 11007(MTA),进来后若是发信不成功则让用户提供退信(或者根据fingerprint and outsmtp_srv 来判断属于阿里内部问题还是阿里外部问题,能搜到结果问题属于我,否则问题让磊哥排查) 526 Authentication failure[1] 认证失败次数太多 526 Authentication failure[0] 认证失败 524 username or passwd is NULL 账号或密码为空 523 cipher text is invalid base64 format 认证账号和密码需要base64加密 554 RCPT (account) dosn’t exist …
-

阿里云服务器经典网络和专有网络究竟有什么区别?
在用户提交订单购买阿里云ECS云服务器时,会面临怎样选择网络类型的烦恼,阿里云服务器定制购买时,网络类型里的经典网络和专有网络(VPC)是什么含义,该怎样选择适合自己的网络类型呢? 海阔中文网为您分析解答: 其实,阿里云官网已经给出了关于这两种网络的简单介绍: 网络类型:仅是 ECS 产品功能上区分,与运营商公网接入网络质量无关,任何网络类型的运营商接入均为 BGP 线路,请您放心使用,并根据自己需要进行选择。 经典网络:IP地址由阿里云统一分配,配置简便,使用方便,适合对操作易用性要求比较高、需要快速使用 ECS 的用户。 专有网络:是指逻辑隔离的私有网络,您可以自定义网络拓扑和 IP 地址,支持通过专线连接。适合于熟悉网络管理的用户。 只不过,这个介绍对于很多人来讲,还是看的云里雾里,看完了也不知道该怎么选。 其实,可以这样简单地理解,从公网ip来讲,经典网络和专有网络没有区别;从内网ip来讲,经典网络是DHIP,也就是自动分配局域网ip地址,而专有网络则是手工分配局域网ip地址,这样方便有多台云服务器的用户自行定义内网ip结构。所以,如果用户只有一台服务器,或者有多台服务器但不需要进行内网互联,那么这两种网络都可以选择的。 但从实务上讲,因为经典网络是阿里云自动分配的ip地址,有一定的规律性,那么黑客也就可以利用内网ip进行局域网攻击,虽然在阿里云的安全体系下有些难度,但事实也证明了有被攻击的可能性。而专有网络因为是自定义局域网ip,那么黑客就没那么容易进入用户的内网进行攻击了。 所以,如果您就只有一台服务器,或者多台服务器之间不需要内网互联,那么怎样选择都可以,个人建议选择经典网络,后期管理更为简单。 有内网互联需求,不需要自定义网络结构,也可以选择经典网络。 反之,有内网互联需求,而且需要自定义网络,那么就选择专有网络。
-

docker下solr6.6的中文分词配置
git clone https://github.com/docker-solr/docker-solr 目前是有以下文件: 5.5 7.2 Docker-FAQ.md Dockerfile.template known_keys.txt README.md TAGS update.md 6.6 7.3 Dockerfile-alpine.template docs LICENSE README-short.txt tests 7.1 builder Dockerfile-slim.template …