存档

文章标签 ‘日本vps’

PhpStudy开启Apache的gzip压缩功能

2014年9月10日 没有评论

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忘记密码恢复密码的解决方法

2014年8月24日 没有评论

流传较广的方法,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了.

解决apt-get的E: Could not get lock /var/lib/dpkg/lock方法

2014年6月26日 没有评论

世界杯年就是容易分心啊。为了看比赛没注意手上的一个在升级配置的服务器运行 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

Sql Server 2008 还原数据库 3154错误

2014年6月13日 没有评论

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)

解决方法
不在数据库名字上右键点击还原,而是在上一层目录“数据库”上右键还原,然后选择要还原的数据库,和备份文件

服务器重启后mysql服务启动得很慢的解决办法

2014年5月9日 没有评论

今天帮客户处理问题时遇到了一个非常郁闷的问题。

服务器重启后,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服务启动用户为”本地系统账户”)

各版本linux及unix升级ssh及ssl方法及解决方案

2014年4月24日 没有评论

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

这样就可以了。

如果有任何与安全相关的问题,欢迎您联系我们的客服工程师。

aspjpeg2.0注册码 aspjpeg破解版 安装及配置对应权限

2014年1月7日 没有评论

aspjpeg组件

下载完成之后按正常的软件安装顺序安装

aspjpeg 2.0 注册码sn:48958-77556-02411

注意:序号为:48958-77556-02411

在提示是否重启IIS时选择“否”,可以安装在任意盘符下面

安装完毕后:

从aspjpeg2.0 的安装目录的BIN[默认:C:\Program Files\Persits Software\AspJpeg\Bin]复制aspjpeg.dll到系统文件加的system32目录

运行regsvr32 c:/windows/system32/aspjpeg.dll (根据你的系统改你的目录)

检测是否注册成功的方法:

将以下代码保存为asp,拷贝在服务器上,用浏览器打开,看返回结果。

<%

set jpeg=server.createobject("persits.jpeg")

response.write jpeg.expires

'检测aspjpeg的注册状态

'注册成功则到期时间为:9999-9-9

'否则为:安装日期加1个月期限

%>

对应目录权限设置Everyone

VMware虚拟机的NAT不能上网的解决办法

2014年1月5日 没有评论

症状:
使用NAT模式能ping通,但是就是开不了网页。

解决办法:

1、首先要设置一下 虚拟机系统为NAT上网方式
2、然后在主机的“本地连接”设置共享给“本地连接3”(也有可能是本地连接4,主要是看NAT使用的是哪个网卡),如果是pppoe登录方式,就把宽带连接共享

3、设置“本地连接3”的属性,DNS要填写一个可以用(也可不填写,最好写上),然后记住IP地址

4、接下来到虚拟机系统里设置本地连接

虚拟机主机设的“网关”就是物理主机的“本地连接3”的IP地址,“子网掩码”跟物理主机的“本地连接3”的一样,一般为255.255.255.0,虚拟机的IP保证是一个C段即可

一般是192.168.2.128之类的

然后最后这步,是最关键的。很多win2008和win7之类的架好vm后无法用nat方式虚拟机能ping通域名,但无法上网就是因为没有设置网卡共享。我们设置网卡共享 然后选择 VMnet8那个网卡就可以解决问题。对应ip一定要对哦。

seo经验(转)

2013年12月27日 没有评论

seo第一点,外链。seo对外链的要求必须是高质量,稳定的外链,只要能够持续的找到稳定的高质量的外链,那seo无疑是真正的强大,高质量,稳定缺一不可,如果是低质量,对网站权重没太大意义,而如果是不稳定的外链,丢失率过大,那是必然被降权的。

seo第二点,内容和内部链接。seo的真正核心就是:用户体验,所以内容必然是第一位,一个网站只要有好的内容并且是原创的内容并且能持续的源源不断的提供原创的好内容,那这个网站的seo已经很强大了,再加以合理的内部链接,为用户提供更加方便的寻找功能,一切以用户体验为核心策划的网站,这样的网站绝对是个seo非常强大的网站。

对于我们最常面对的两个搜索引擎百度和谷歌,百度更偏重于内容,而谷歌则更偏重于外链。贵州移动但我觉得其实最最重要的依然是内容,是用户体验,未来搜索引擎永远不会改变的算法,并且会一直精进的排名最大规则就是一个网站的用户体验度。

其实seo学习的过程是非常奇妙的,当我们什么都不懂时,我们对seo深感复杂,所以我们会努力的去尝试各种方法,各种手段,尽管刚开始就听到许多前辈说过seo技术是非常简单的,真正难的是seo思维。可对于一个新人,当你告诉他seo只有两点而已,非常简单。他是不可能听的懂的。

所以,我们必须自己尝试,必须自己经历诸多困难挫折之后,我们慢慢发现,哎,原来seo技术真的是如此简单,seo技术就这样而已嘛·
现在回想起曾经某个seo高手告诉过我:SEO拼的不是技术,是资源和思路 ,你技术再好没有资源等于零。当我一直难以明白这句话的深刻含义时,再次追问,他的一句回答让我陷入了深思:
假如 我SEO不怎么样但是我有个点子能让所有的人都帮我做外链 你说我是SEO技术好 还是思路好

过去听不懂,是因为一直执着于技术的学习,而现在当我把技术都看懂了之后,我才明白所谓seo思路的重要性。任何技术都是可以在短期时间提升的,而思维模式却没有办法,高手和低手,并非相差在技术,而是思维。

如果我知道seo的所有技术,就是内容和链接,但是这仅是知道而已,我要怎么去做好内容和链接,这才难点和重点。知道做什么只是知识。如何做好才是智慧。

Nginx出现413 Request Entity Too Large错误解决方法

2013年12月16日 没有评论

今天使用Wordpress的flash版文件上传功能的时候,总是提示接口错误,很是郁闷。换小文件发现没有问题,所以问题肯定出现在文件大小上,找了半天没有发现wordpress有限制上传文件大小的地方。

切换到传统文件上传界面,重新上传一个大文件,这回出来错误提示了,413 Request Entity Too Large,google了一下,发现是Nginx的错误提示。

解决方法:

打开nginx主配置文件nginx.conf,找到http{}段,添加

client_max_body_size 20m;

Centos下 vi /usr/local/nginx/conf/nginx.conf

重启NGINX
kill -HUP `cat /usr/local/nginx/nginx.pid `
恢复正常