为cpanel安装一枚nginx前端插件

作者:阿川 发布时间:November 23, 2014 分类:服务器 点击:6043

最近客户的网站折腾的到蛋蛋疼,也不知道具体错误为何,总之.访问php时快时慢,他不是卡死,而且一直在等待载入,后台用easyApache折腾半天,无果.只好给他想其他的办法了,所以想到了传说的nginx,话说这玩意在前端的话.终究会好一点的..实际上我也不知道为啥要给他装个nginx在前面,但是总觉得这货要是一直这么卡下去,我估计要哭了.
安装方法很简单,首先到集群/远程访问中生成一个新的密钥,之后执行下面的命令安装.  

cd /usr/local/src
 
wget http://nginxcp.com/latest/nginxadmin.tar 
 
tar xf nginxadmin.tar
 
cd publicnginx
 
./nginxinstaller install

 安装完之后会提示你重启apache,完了你重启就会发现一堆的错误出现了,大部分都是提示你神马IP被占用啥的,错误我这没记录了,就不贴出来了.放个修改的代码
cd /etc/nginx/vhosts
perl -pi -w -e 's/server_name(.*) 你的服务器IP/server_name$1/g;' *
完了之后,去WHM里面的偏好设置中将

Allow apps that have not registered with AppConfig to be run when logged in as a reseller to WHM tweak setting

这行关闭,不然你运行插件他会提示401错误的.
之后添加个计划任务

crontab -e
0 */1 * * * /usr/sbin/tmpwatch -am 1 /tmp/nginx_client
完了之后保存,然后再测试网站访问.发现速度确实比之前要快很多啦.然后现在也没遇到问题.
之后把这篇蛋疼的日志贴进来.

zencart在后台发测试邮件提示:Could not instantiate mail function.

作者:阿川 发布时间:November 4, 2014 分类:网站应用 点击:20046

哎..命苦...这么晚还在处理售后.折腾完上一台服务器无法下载文件之后,现在接着在给客户折腾他的zencart为毛不能发送邮件.
一客户在他的美国服务器上(就是我最近托管的那个机房,速度很不错)使用系统工具-send mail测试邮件功能是否正常,但是提示:
Could not instantiate mail function.
不管你怎么折腾都会提示这货,查了半天的apache日志无果,以为是sendmail没安装,先安装

yum install sendmail
service sendmail restart

再兴致勃勃的跑到后台再测试,依然报错,接着去翻var/log下面的maillog,发现了问题所在,错误信息如下
Nov  3 09:47:48 localhost sendmail[4872]: NOQUEUE: SYSERR(www):
 can not chdir(/var/spool/clientmqueue/): Permission denied

没有权限嘛,直接
chmod -R 777 /var/spool/clientmqueue/

接着再去测试,不报错,提示
Notice: Email sent to: All Customers (2)
问题解决

当你使用帝国CMS下载创建网站提示349错误时

作者:阿川 发布时间:November 4, 2014 分类:网站应用 点击:10275

客户在我这拿了一台美国服务器.centos下搭建的apache环境.使用帝国CMS做站,所有的下载在IE和firefox测试无误,使用chorme或者基于chorme内核的浏览器(如360那个坑爹的双内核)就出错,提示:
“收到了来自服务器的重复标头来自服务器的响应包含重复标头。此问题通常是由于网站或代理配置不正确导致的。
只有网站或代理管理员才能解决此问题。
错误 349 (net::ERR_RESPONSE_HEADERS_MULTIPLE_CONTENT_DISPOSITION):我们收到了多个截然不同的“Content-Disposition”标头。
我们不允许此行为,以防遭到 HTTP 响应拆分攻击。”
网上搜索一大堆错误提示,最后找到个靠谱的.
首先.打开你e/DownSys/class/下面的DownSysFun.php.大约192行,
将内容

Header("Content-Disposition: attachment; filename=".$filename);

更改为:
Header("Content-Disposition: attachment; filename=\"".$filename."\"");

问题即可解决

服务器数据快速迁移

作者:阿川 发布时间:October 31, 2014 分类:搜索引擎 点击:5476

tar czf - public_html | ssh root@50.31.252.181 tar xzf - -C /www/web/public_html

将目录下的public_html 使用tar压缩上传到目标服务器50.31.252.181的/www/web/public_html下并解压

当你发现一群王八蛋在C你的站时

作者:阿川 发布时间:October 19, 2014 分类:网站应用 点击:6718

今儿个一客户发了他一台机器过来.告知在不停的被人CC.
于是二话不说.上去帮他干了4000个恶意IP.正常了不到20分钟.负载持续飙升.
于是.只好挨个排查日志.发现这帮孙子.只要是在C的时候他们的User-Agent都是一样的
比如:

190-207-149-57.dyn.dsl.cantv.net - - [19/Oct/2014:23:36:36 +0800] 
"GET /otras-ligas-c-6.html HTTP/1.0" 302 - 
"http://site/otras-ligas-c-6.html" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)"
201-248-102-175.dyn.dsl.cantv.net - - [19/Oct/2014:23:36:36 +0800] 
"GET /otras-ligas-c-6.html HTTP/1.0" 403
 308 "http://site/otras-ligas-c-6.html" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)"
190-206-82-223.dyn.dsl.cantv.net - - [19/Oct/2014:23:36:36 +0800] 
"GET /otras-ligas-c-6.html HTTP/1.0" 302 - 
"http://site/otras-ligas-c-6.html" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)"

不难发现他们的User-Agent都是Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)
知道这点就好办了
在.htaccess里面屏蔽掉他们就能解决了
下面内容直接添加到.htaccess之中.问题解决
SetEnvIfNoCase User-Agent "Mozilla/4.0" shit_user
    Order Allow,Deny
    Allow from all
    Deny from env=shit_user
 
    RewriteCond %{HTTP_USER_AGENT} Mozilla\/4\.0 [NC]
    RewriteRule .* - [R=503,L]

当2003没有声音的时候

作者:阿川 发布时间:October 17, 2014 分类:服务器 点击:5382

两步:
管理工具 -> 终端服务配置 -〉连接-〉RDP-Tcp 右键,属性,客户端设置,最下面有个禁用下列项目,把音频映射的选项清除;
开始——管理工具——服务——windows audio--属性,选择自动.之后启用.
重启计算机,之后登陆就能听到声音了

当webmin把php从5.16升级到5.2.7后...

作者:阿川 发布时间:October 10, 2014 分类:网站应用 点击:5393

当webmin把php从5.16升级到5.2.7后,肯定是出现了一堆问题的..不然也不会有这篇文章出来鸟.
首先.升级php
vi /etc/yum.repos.d/utterrambling.repo
如果你的vps或主机是32bit的Centos请输入以下内容:

[utterramblings]
    name=Jason,s Utter Ramblings Repo
    baseurl=http://www.jasonlitka.com/media/EL5/i386/
    enabled=1
    gpgcheck=1
    gpgkey=http://www.jasonlitka.com/media/RPM-GPG-KEY-jlitka

如果你的主机或者vps是64bit的Centos系统请输入下面的内容:

[utterramblings]
    name=Jason,s Utter Ramblings Repo
    baseurl=http://www.jasonlitka.com/media/EL5/x86_64/
    enabled=1
    gpgcheck=1
    gpgkey=http://www.jasonlitka.com/media/RPM-GPG-KEY-jlitka

之后关闭fastestmirror,
vim /etc/yum/pluginconf.d/fastestmirror.conf

把enable 改为0
安装之前最好卸载掉php,之后执行升级
yum remove php*
yum -y upgrade php

很显然.这样升级.肯定是不成功的.因为有个依赖和mysql冲突了.于是只好卸载掉把php和mysql一起日掉,
yum remove php* mysql*

之后呢...再安装
yum -y install php php-* mysql mysql-server

好了..现在php版本是5.2.mysql的版本是5.1,然后发现mysql没启动.不管怎么折腾都没用,执行mysql_upgrade.提示
[root@AI18 mysql]# mysql_upgrade
Looking for 'mysql' as: mysql
Looking for 'mysqlcheck' as: mysqlcheck
Running 'mysqlcheck with default connection arguments
mysqlcheck: Got error: 2002: Can't connect to local MySQL server 
through socket '/var/lib/mysql/mysql.sock' (2) when trying to connect
FATAL ERROR: Upgrade failed

好吧.升级也不成.检查日志,发现如下提示
141010 12:38:44 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
141010 12:38:44 [ERROR] Error message file '/usr/share/mysql/english/errmsg.sys' 
had only 481 error messages,
but it should contain at least 641 error messages.
Check that the above file is the right version for this program!

只好去找个mysql的tar包来替换
wget http://mysql.llarian.net/Downloads/MySQL-5.1/mysql-5.1.73.tar.gz
tar -zxf mysql
tar -zxf mysql-5.1.73.tar.gz 
ls
cd mysql-5.1.73
mv /usr/share/mysql/english/errmsg.sys /usr/share/mysql/english/errmsg.sys.old
cp sql/share/english/errmsg.sys /usr/share/mysql/english/errmsg.sys
service mysqld restart

好了.mysql启动.去webmin获得管理员密码
执行
mysql_upgrade -uroot -p

将mysql表升级即可.

当IIS6中JS文件无法访问的解决方案

作者:阿川 发布时间:September 12, 2014 分类:心情随笔 点击:5534

今天.客户下午致电给我.说他的网站的编辑器无法加载.让我看看咋回事.
于是回来直奔电脑.
打开网站后台.发现kindeditor编辑器无法加载.于是乎.查看源代码,发现编辑器的JS有正确加载

<script charset="utf-8" src="../kindeditor/kindeditor.js"></script>
<script charset="utf-8" src="../kindeditor/lang/zh_CN.js"></script>

接着..在服务器上检查文件.发现文件也存在..
于是开始剁手操作.直接访问网址/kindeditor/kindeditor.js发现提示404无法访问
一瞬间就觉得太不可思议了.因为JS和html页面一样是交给本地浏览器解析的,无法显示应该只有一种可能就是MEMI类型不对
于是乎...
IIS--网站--属性--HTTP头--MEMI类型--新建
扩展名:.js
MEMI类型:application/x-javascript
之后直接访问JS文件.发现已经正确加载,接着继续刷新网站后台.kindeditor已经正确加载.
OVER