PhpStudy开启Apache的gzip压缩功能
PhpStudy是一款非常方便的搭建PHP动态网站或者服务器的国产集成软件包,包含apache、mysql、php等。可以到其官方网站查看并且下载。
注意这里的PhpStudy是Apache+php解决方案,另外一个PhpFind是Nginx+php解决方案。由于Apache的使用较多些,以下的所有示例均是针对Apache,当然,只要是Apache,不管是自己独立安装,还是选择象我这样的懒人方式,集成式一键安装。配置均相同。
gzip是GNUzip的缩写,它是一个GNU自由软件的文件压缩程序。当服务器开启gzip压缩功能以后,当有人访问服务器的网站时,服务器将网页内容压缩后传输到来访的电脑浏览器,浏览器进行解压再显示出来。一般对纯文本内容可压缩到原大小的70%甚至更高。
以前介绍过如何开启SAE的gzip压缩功能,以及Typecho的gzip压缩,另外还有tomcat的gzip的压缩。本文主要讲述如何开启Apache的gzip压缩功能。
要让apache支持gzip功能,要用到deflate_Module和headers_Module。打开apache的配置文件httpd.conf,大约在105行左右,找到以下两行内容:(这两行不是连续在一起的)
1 2 | #LoadModule deflate_module modules/mod_deflate.so #LoadModule headers_module modules/mod_headers.so |
然后将其前面的“#”注释删掉,表示开启gzip压缩功能。开启以后还需要进行相关配置。在httpd.conf文件的最后添加以下内容即可:
1 2 3 4 | <IfModule deflate_module> #必须的,就像一个开关一样,告诉apache对传输到浏览器的内容进行压缩 SetOutputFilter DEFLATE </IfModule> |
最少需要加上以上内容,才可以生gzip功能生效。由于没有做其它的额外配置,所以其它相关的配置均使用Apache的默认设置。这里说一下参数“DeflateCompressionLevel”,它表示压缩级别,值从1到9,值越大表示压缩的越厉害。
注意,这里要强调一个地方,我是通过搜索引擎找到相关文章进行设置的,而这些文章可能是来回复制的,有错误都不知道,如果你也按照那些做法去做,八层是出错,直接Apache都启动不了。究其原因,主要是有个参数不匹配。在上面去掉注释的“#”,即:
1 | LoadModule deflate_module modules/mod_deflate.so |
这里以后会用到中间的名称,即deflate_module。后续开启gzip压缩中要使用该名称,即:
1 2 3 4 | <IfModule deflate_module> ...... ...... </IfModule> |
这两个deflate_module必须一致。网络上其它很多文章,都是不一致的,所以直接报错。
下面是另一个典型配置,供参考。这里不建议将图片视频等多媒体文件进行gzip压缩,一般只压缩纯文本格式的文件,如.php、.txt、.html、.css、.js等。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | <IfModule deflate_module> #必须的,就像一个开关一样,告诉apache对传输到浏览器的内容进行压缩 SetOutputFilter DEFLATE #压缩级别,1-9,9为最高 DeflateCompressionLevel 9 #不进行压缩的文件 SetEnvIfNoCase Request_URI \.(?:gif|jpeg|png)$ no-gzip dont-vary #设置不对后缀gif,jpg,jpeg,png的图片文件进行压缩 SetEnvIfNoCase Request_URI \.(?:exe|tgz|zip|bz2|sit|rar)$ no-gzip dont-vary #同上,就是设置不对exe,tgz,gz。。。的文件进行压缩 SetEnvIfNoCase Request_URI \.(?:pdf|mov|avi|mp3|mp4|rm)$ no-gzip dont-vary #针对代理服务器的设置 <IfModule headers_moudle> Header append vary User-Agent </IfModule> </IfModule> |
MySQL忘记密码恢复密码的解决方法
流传较广的方法,mysql中文参考手册上的,各位vps主机租用客户和服务器托管用户忘记mysql5.1管理员密码时,可以使用这种方法破解下
一、服务器环境
1、系统windows2003 中文企业版 sp2
2、mysql 5.1.55
3、php 5.2.17
4、IIS 6.0
二、破解过程
1、停止mysql服务(以管理员身份,在cmd命令行下运行)使用如下命令:
net stop mysql
2、.使用命令启动mysql数据库,命令如下
mysqld --skip-grant-tables 或者 mysqld-nt --skip-grant-tables
3.新开一个cmd窗口,进行如下命令操作
1、mysql -uroot
2、update mysql.user set password=password(‘root123456′) where user=’root’;
root123456就是你新的root密码。
4、打开任务管理器,停止mysql,mysqld进程,使用net start mysql启动mysqld服务,就可以使用root用户 root密码进入数据库了(这步可以省略重启机器)
至止,win下破解密码就到这里了。以下是一些系统下的其他办法。
据说可以用直接修改user表文件的方法:
关闭MySQL,Windows下打开Mysql\data\mysql,有三个文件user.frm,user.MYD,user.MYI找个知道密码的MySQL,替换相应的这三个文件,如果user表结构没改过,一般也没人去改,替换user.MYD就可以了。
也可以直接编辑user.MYD,找个十六进制编辑器,UltraEdit就有这个功能。关闭MySQL,打开user.MYD。将用户名root后面的八个字符改为565491d704013245,新密码就是123456。或者将它们对应的十六进制数字,(左边那里,一个字符对应两个数字),改为 00 02 02 02 02 02 02 02,这就是空密码,在编辑器右边看到的都是星号*,看起来很象小数点。重开MySQL,输入root和你的新密码。
今天有点事要进mssql,因为是很久以前装的,所以忘记了sa的密码,虽然用windows身份验证就可以进,但是如果用php连接mssql时就不行了,于是google了一下,找到了解决方法.
用windows身份验证机制进去,然后
输入下列命令,执行:
exec sp_password null,’newpass’,'sa’
示例
A.无原密码的情况下更改登录密码
下面的示例将登录 Victoria 的密码更改为 123
EXEC sp_password NULL,’123′,’sa’
B.更改密码
下面的示例将登录 Victoria 的密码由 123 改为 456
EXEC sp_password ’123′,’456′
另外我发现了一个问题,那就是windows和SQL Server身份验证机制有些不同
windows身份验证
服务器地址 登陆结果
127.0.0.1 ok
localhost wrong
. ok
SQL Server身份验证
服务器地址 登陆结果
127.0.0.1 ok
localhost wrong
. wrong
另外记录一下忘记mysql 密码的取回方法
如果 MySQL 正在运行,
首先杀之: killall -TERM mysqld(如果是windows,直接调出进程管理器,结束之)
以安全模式启动 MySQ:
/usr/bin/safe_mysqld –skip-grant-tables &
(windows 下 mysql安装所以盘/mysql/bin/safe_mysqld –skip-grant-tables )
就可以不需要密码就进入 MySQL 了.
然后就是
>use mysql
>update user set password=password(“new_pass”) where user=”root”;
>flush privileges;
重新杀 MySQL,用正常方法启动 MySQL.
linux下的解决方法:
一. MySQL密码的恢复方法之一
如果忘记了MySQL的root密码,可以用以下方法重新设置:
1. KILL掉系统里的MySQL进程;
killall -TERM mysqld
2. 用以下命令启动MySQL,以不检查权限的方式启动;
safe_mysqld –skip-grant-tables &
3. 然后用空密码方式使用root用户登录 MySQL;
mysql -u root
4. 修改root用户的密码;
mysql> update mysql.user set password=PASSWORD(‘新密码’) where User=’root’;
mysql> flush privileges;
mysql> quit
重新启动MySQL,就可以使用新密码登录了。
二. MySQL密码的恢复方法二
有可能你的系统没有 safe_mysqld 程序(比如我现在用的 ubuntu操作系统, apt-get安装的mysql) , 下面方法可以恢复
1. 停止mysqld;
/etc/init.d/mysql stop
(您可能有其它的方法,总之停止mysqld的运行就可以了)
2. 用以下命令启动MySQL,以不检查权限的方式启动;
mysqld –skip-grant-tables &
3. 然后用空密码方式使用root用户登录 MySQL;
mysql -u root
4. 修改root用户的密码;
mysql> update mysql.user set password=PASSWORD(‘newpassword’) where User=’root’;
mysql> flush privileges;
mysql> quit
重新启动MySQL
/etc/init.d/mysql restart
就可以使用新密码 newpassword 登录了。
windoe下的解决方法:
1、编辑MySQL的配置文件:my.ini
一般在MySQL安装目录下有my.ini即MySQL的配置文件。
在此配置文件的最后添加如下一行:
skip-grant-tables
保存退出编辑。
2、然后重启MySQL服务
在命令行下执行:
net stop MySQL
net start MySQL
3、设置新的ROOT密码
然后再在命令行下执行:
MySQL -u root -p MySQL或mysql -u root -p
直接回车无需密码即可进入数据库了。
此时,在命令行下执行 use mysql;
现在我们执行如下语句把root密码更新为:
update user set password=password(“root”) where user=”root”;
(注意:此时不用使用mysqladmin -u root -p password ‘你的新密码’这条命令修改密码,因为’skip-grant-tables’配置,
不信的话,你可以试用一下,它肯定会报如下所示的错误:
F:\Documents and Settings\long>mysqladmin -u root -p password ‘root’
Enter password:
Warning: single quotes were not trimmed from the password by your command
line client, as you might have expected.
mysqladmin:
You cannot use ‘password’ command as mysqld runs
with grant tables disabled (was started with –skip-grant-tables).
Use: “mysqladmin flush-privileges password ‘*’” instead)
exit 退出MySQL。
4、还原配置文件并重启服务
然后修改MySQL配置文件把刚才添加的那一行’skip-grant-tables’删除。
再次重起MySQL服务,密码修改完毕。
用新密码root试一下吧,又能登入重新进入mysql了.
SSH登陆错误 WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!
Connection to 192.168.2.2 closed.
[root@localhost ~]# ssh 192.168.2.2
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that the RSA host key has just been changed.
The fingerprint for the RSA key sent by the remote host is
1b:19:d2:4d:c8:88:bf:dc:d6:72:a7:0b:7b:73:07:d8.
Please contact your system administrator.
Add correct host key in /root/.ssh/known_hosts to get rid of this message.
Offending key in /root/.ssh/known_hosts:5
RSA host key for 192.168.2.2 has changed and you have requested strict checking.
Host key verification failed.
1.在客户端执行下述指令即可 #mv /root/.ssh/known_hosts /tmp
2.当然也可以直接编辑known_hosts文件,把里面与所要连接IP(192.168.10.20)相关的内容删掉即可.
解决apt-get的E: Could not get lock /var/lib/dpkg/lock方法
世界杯年就是容易分心啊。为了看比赛没注意手上的一个在升级配置的服务器运行 apt-get upgrade 更新软件时,ssh超时了。直接关闭了终端,但apt-get进程没有结束,结果终端提示
:E: Could not get lock /var/lib/dpkg/lock
解决办法如下:
办法1 终端输入 ps aux | grep apt-get ,列出进程。找到含有apt-get的进程,然后再直接kill PID。如:kill 5677
办法2 强制解锁,命令:
rm /var/cache/apt/archives/lock
rm /var/lib/dpkg/lock
但这样后果就是如下:
再次运行apt-get upgrade提示。
E: dpkg was interrupted, you must manually run ‘dpkg –configure -a’ to correct the problem.
解决办法:
dpkg –configure -a
CentOS下安装fail2ban防暴力破解工具(转)
CentOS下安装fail2ban防暴力破解工具:
前言:首先说说为什么笔者会想到写这篇博客,源于昨天下午,突然收到Nagios的报警邮件,说邮件服务器的进程数超过阀值。于是赶紧登录上去查看。
这里说下分析的过程:
1.既然说进程数超过阀值,肯定先查看进程:ps -ef;
2.如果不能即时看到问题,那就动态显示:top,看看究竟是哪个程序占用这么多进程;
3.最后确定了应该是courier-imap,但还不知道是什么原因导致;
4.查看ip连接,确认是否是其存在问题:netstat -ant,发现有大量的110连接;
5.既然是收信服务,那就赶紧追踪查看邮件日志:tail -f /var/log/maillog;
6.发现问题:日志里有大量的登录错误信息,发现是同一ip,并在用不同的用户名密码来暴力破解
7.稍等一会,确定目标IP后,将其ip的包丢弃:iptables -I INPUT -s 176.61.143.41 -j DROP #此ip为真实攻击ip,所以在此曝光
8.稍等一会,再次查看进程,进程数有明显下降,故障解决。
介于这种安全隐患的存在,我们以后可以利用fail2ban来实现防暴力破解,防止恶意攻击。
下面就来说说fail2ban具体是什么。
简介:
fail2ban可以监视你的系统日志,然后匹配日志的错误信息(正则式匹配)执行相应的屏蔽动作(一般情况下是调用防火墙屏蔽),如:当有人在试探你的SSH、SMTP、FTP密码,只要达到你预设的次数,fail2ban就会调用防火墙屏蔽这个IP,而且可以发送e-mail通知系统管理员,是一款很实用、很强大的软件!
功能和特性:
1、支持大量服务。如sshd,apache,qmail,proftpd,sasl等等
2、支持多种动作。如iptables,tcp-wrapper,shorewall(iptables第三方工具),mail notifications(邮件通知)等等。
3、在logpath选项中支持通配符
4、需要Gamin支持(注:Gamin是用于监视文件和目录是否更改的服务工具)
5、需要安装python,iptables,tcp-wrapper,shorewall,Gamin。如果想要发邮件,那必需安装postfix或sendmail
核心原理:
其实fail2ban就是用来监控,具体是调用iptables来实现动作!
好了,那下面来说说具体怎么安装、部署吧。
一、首先是服务安装
首先配置yum源,这里采用的是yum直接装(也可源码安装)
vim /etc/yum.repos.d/CentOS-Base.repo
在最后新增:
[atrpms]
name=Red Hat Enterprise Linux $releasever – $basearch – ATrpms
baseurl=http://dl.atrpms.net/el$releasever-$basearch/atrpms/stable
gpgkey=http://ATrpms.net/RPM-GPG-KEY.atrpms
gpgcheck=1
enabled=1
然后直接就yum装:yum -y install fail2ban
安装完成后,服务配置目录为:/etc/fail2ban
/etc/fail2ban/action.d #动作文件夹,内含默认文件。iptables以及mail等动作配置
/etc/fail2ban/fail2ban.conf #定义了fai2ban日志级别、日志位置及sock文件位置
/etc/fail2ban/filter.d #条件文件夹,内含默认文件。过滤日志关键内容设置
/etc/fail2ban/jail.conf #主要配置文件,模块化。主要设置启用ban动作的服务及动作阀值
/etc/rc.d/init.d/fail2ban #启动脚本文件
二、安装后配置
首先来看看日志文件的默认定义:
cat /etc/fail2ban/fail2ban.conf |grep -v ^#
[Definition]
loglevel = 3
logtarget = SYSLOG #我们需要做的就是把这行改成/var/log/fail2ban.log,方便用来记录日志信息
socket = /var/run/fail2ban/fail2ban.sock
再来看看主配置默认生效的配置:
cat /etc/fail2ban/jail.conf |grep -v ^# |less
[DEFAULT] #全局设置
ignoreip = 127.0.0.1 #忽略的IP列表,不受设置限制(白名单)
bantime = 600 #屏蔽时间,单位:秒
findtime = 600 #这个时间段内超过规定次数会被ban掉
maxretry = 3 #最大尝试次数
backend = auto #日志修改检测机制(gamin、polling和auto这三种)
[ssh-iptables] #针对各服务的检查配置,如设置bantime、findtime、maxretry和全局冲突,服务优先级大于全局设置
enabled = true #是否激活此项(true/false)
filter = sshd #过滤规则filter的名字,对应filter.d目录下的sshd.conf
action = iptables[name=SSH, port=ssh, protocol=tcp] #动作的相关参数
sendmail-whois[name=SSH, dest=root, sender=fail2ban@example.com] #触发报警的收件人
logpath = /var/log/secure #检测的系统的登陆日志文件
maxretry = 5 #最大尝试次数
PS:logpath(Centos5和Rhel5中)要写成/var/log/secure,这个是系统登陆日志,不能随意设置
service fail2ban start #启动服务即可(就用默认的主配置文件里定义的)
service iptables start #fail2ban依赖预iptables #之前改过日志路径,不行的话就再重启fail2ban
三、测试功能
测试机:192.168.30.251
fail2ban:192.168.29.253
在测试机上ssh 192.168.29.253,并且连续输入超过5次密码不对(经测试有延迟,多试几次),就会出现下图,连接不上
fail2ban上会产生日志记录:阻挡了此ip的续连
四、扩展说明
其实fail2ban的功能还是很丰富的,刚刚只是测试了它的防ssh暴力破解功能。
下面简单提下我用的一些功能:
本人是用在邮件服务器上,所以会监控pop、http等服务,具体配置见下(不做演示了)
[pop3]
enabled = true
filter = courierlogin
action = iptables[name=pop3, port=110, protocol=tcp]
logpath = /var/log/maillog
bantime = 1800
findtime = 300
maxretry = 30
[webmail]
enabled = true
filter = webmail
action = iptables[name=httpd, port=http, protocol=tcp]
logpath = /var/log/maillog
bantime = 900
findtime = 300
maxretry = 5
好了,就先到这里吧!
Sql Server 2008 还原数据库 3154错误
sqlserver2008还原数据库时出现了3154错误,具体错误信息如下:
错误信息
标题: Microsoft SQL Server Management Studio
——————————
还原 对于 服务器“vps12com-PC”失败。 (Microsoft.SqlServer.SmoExtended)
——————————
其他信息:
执行 Transact-SQL 语句或批处理时发生了异常。 (Microsoft.SqlServer.ConnectionInfo)
——————————
尚未备份数据库 “vps12com” 的日志尾部。如果该日志包含您不希望丢失的工作,请使用 BACKUP LOG WITH NORECOVERY 备份该日志。请使用 RESTORE 语句的 WITH REPLACE 或 WITH STOPAT 子句来只覆盖该日志的内容。
RESTORE DATABASE 正在异常终止。 (Microsoft SQL Server,错误: 3159)
解决方法
不在数据库名字上右键点击还原,而是在上一层目录“数据库”上右键还原,然后选择要还原的数据库,和备份文件
什么是pps数据包
经常看到一些国内外网站提供的防火墙防护单位级别以PPS为单位。对国内大部分朋友来讲有些陌生,是什么意思呢。又表示可以防护多少GB呢。国内一般多数表示为10G、20G硬件防火墙。比如好理解。我们先来了解下什么是pps。
数据包每秒(Packets per Second (PPS) )
网络的性能通常用吞吐率(throughput)这个指标来衡量。常用的网络吞吐率的单位有:PPS(即每秒发送多少个分组数据包)、BPS(ByetsPer Second;即每秒发送多少字节)、bPS (bits Per Second;即每秒发送多少比特)、TPS(TransactionsPer Second;即每秒完成多少次发送过程)。
Precision Positioning System的简称。
美国政府在GPS的最初设计中,计划向社会提供两种服务:精密定位服务(PPS)和标准定位服务(SPS)。精密定位服务的主要对象是美国军事部门和其他特许民用部门。使用C/A码和双频P码,以消除电离层效应的影响,使预期定位精度达到10m。标准定位服务的主要对象是广大的民间用户。它只使用结构简单、成本低廉的C/A码单频接收机,预期定位精度只达到100m左右。但是,在GPS试验阶段,由于提高了卫星钟的稳定性和改进了卫星轨道的测定精度,使得只利用C/A码进行定位的GPS精度达到14m,利用P码的PPS的精度达到3m,远远优于预期定位精度。美国政府考虑到自身的安全,于1991年7月在BlockⅡ卫星上实施SA和AS政策。其目的是降低GPS的定位精度。
示例:10 Mbps: 14,880 pps 表示什么?
包转发率标志了交换机转发数据包能力的大小。单位一般位pps(包每秒),一般交换机的包转发率在几十Kpps到几百Mpps不等。包转发速率是指交换机每秒可以转发多少百万个数据包(Mpps),即交换机能同时转发的数据包的数量。包转发率以数据包为单位体现了交换机的交换能力。
10Mbps就是10,000,000/8 字节/秒的传输速度 ,每秒10M位的传输速度 ,8位等于1字节 ,10M位相当于1.25M字节 ,就是每秒传输速度是1.25M字节
pps:每秒转发数据包的数量
就是在10 Mbps带宽,包转发速率是 14,880包/秒
以上,我们可以理解为防火墙的防护效率。
服务器重启后mysql服务启动得很慢的解决办法
今天帮客户处理问题时遇到了一个非常郁闷的问题。
服务器重启后,mysql老是连接不上.网站打不开.要等上几十分钟甚至几小时MYSQL才能启动完。
并且服务器远程桌面也非常慢。经常卡死。
查了很久发现原来是C:\windows\temp下面存在大量的临时文件导致mysql启动缓慢,原因是长时间没有清理导致临时文件过多,影响到了mysql的正常启动。既然找到原因了就好下手解决问题。
经过如下方式处理后,mysql正常启动了!
开始——运行,输入CMD
然后再输入 del c:\windows\temp\*.* /s /q 回车。
就会自动删除C:\windows\temp下面所有的临时文件。
如果是Windows系统还可以使用以下方法解决。
MySQL Server目录下,打开my.ini,查找[mysqld],在其下加一行
tmpdir=”C:/mysql_temp/”
C:/mysql_temp/自己建立,这个作为mysql的临时目录。
该目录的权限仅为
Administrators:完全控制
SYSTEM:完全控制
即可。(假设你的mysql服务启动用户为”本地系统账户”)
让你的网站实现301重定向
本文档用于帮助部分因空间不支持301重定向而困扰的用户提供解决办法。
该解决办法的前提:
空间必须支持伪静态,也就是mod_rewrite模块,这点应该绝大部分空间商都支持,如果你是自己搭建的服务器,可以到网上直接搜索301重定向需要的设置。
搞清楚你服务器环境的类型,你登录网站后台,系统配置-系统信息,下面有PHP环境,务必搞清楚是IIS还是apache。
以下是实现办法:
IIS下利用伪静态httpd.ini来实现301重定向
一、没有在后台开启伪静态,使用的是静态页面或动态页面
[ISAPI_Rewrite]
# 3600 = 1 hour
CacheClockRate 3600
RepeatLimit 32
RewriteCond Host: ^vps12.com$
RewriteRule (.*) http://www.vps12.com$1 [I,RP]
新建一个文本文档,把文件名以及后缀修改为:httpd.ini (windows系统一般要设置可见文件后缀或才能修改真正的文件后缀)
把上面的代码粘贴到httpd.ini文件中,且务必仔细将以上代码做修改,把vps12.com改成你的域名,如abc.com,注意.前面的也需要(最下面两行都需要做一样的修改)。
保存后,登录FTP,将该文件上传到你网站的根目录,然后就大功告成,访问网站试试吧!
二、如果在网站后台开启了伪静态
登录FTP,找到根目录下的httpd.ini文件,下载到本地,编辑该文件,在第4行 RepeatLimit 32 下新起一行(注意不要动下面的代码),把下面这段复制粘贴到新起的那行:
RewriteCond Host: ^vps12.com$
RewriteRule (.*) http://www.vps12.com$1 [I,R]
然后,务必把vps12.com修改为你的域名,如abc.com,注意.前面的也需要。
保存后,登录FTP,将该文件上传覆盖到你网站的根目录,然后就大功告成,访问网站试试吧!
apache下利用.htaccess来实现301重定向
一、没有开启伪静态功能
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www.vps12.com$ [NC]
RewriteRule ^(.*)$ http://www.vps12.com/$1 [L,R=301]
新建一个文本文档,把文件名以及后缀修改为:.htaccess (windows系统一般要设置可见文件后缀或才能修改真正的文件后缀)
把上面的代码粘贴到.htaccess文件中,且务必仔细将以上代码做修改,把vps12.com改成你的域名,如abc.com。
保存后,登录FTP,将该文件上传到你网站的根目录,即可。
二、开启了伪静态功能
登录FTP,找到根目录下的.htaccess文件,下载到本地,编辑该文件,在第1行 RewriteEngine On 下新起一行(注意不要动下面的代码),把下面这段复制粘贴到新起的那行:
RewriteCond %{HTTP_HOST} !^www.vps12.com$ [NC]
RewriteRule ^(.*)$ http://www.vps12.com/$1 [L,R=301]
然后,务必把vps12.com修改为你的域名,如abc.com。
保存后,登录FTP,将该文件上传覆盖到你网站的根目录,即可。
各版本linux及unix升级ssh及ssl方法及解决方案
2014年的4月注定不是个安稳的月份。经网络大报出ssh及ssl漏洞后。请大家放心:我司的云架构之前使用 OpenSSL 1.0.0 版本,现在已经升级到 OpenSSL 1.0.1g。这两个分支版不受本次漏洞影响。
此外,我们的云架构底层防火墙还专门针对 SSL 的默认端口做了底层加固,过滤tcp22和443端口的数据包,匹配包头为攻击类型的数据包则丢弃。
因此,只要您的云主机仍然在使用 SSL 协议的默认端口,即使有的云主机上有 SSL 漏洞,也不会受到很大影响。
如果您修改了 SSL 协议的默认端口,或是有其他平台上的云主机或是物理服务器,我们建议您可以通过以下地址检测这些主机上的网站:
http://possible.lv/tools/hb/
如果检测出问题,您可以这样修复。
针对 Debian 和 Ubuntu 系统:
# apt-get update
# apt-get install openssl libssl1.0.0
针对CentOS:
# yum update openssl
如果您使用的是openSUSE:
# zypper in -t patch openSUSE-2014-277
修复完成后,必须要重新 Web 服务:
重启 Apache: # /etc/init.d/apache2 restart
重启 Nginx: # /etc/init.d/ngnix restart
重启 Httpd: # /etc/init.d/httpd restart
这样就可以了。
如果有任何与安全相关的问题,欢迎您联系我们的客服工程师。