phpmyadmin导入mysql遇到#1065 – Query was empty

分类:运维技术日期:2012-03-15 - 11:49:18评论:9条作者:老谢

一位客户把在我们美国主机的公司的网站搬家到了国内,搬家遇到了问题,国内主机商这边似乎找不着人,于是乎客户找着了我们,问题跟我描述以后,发现是数据库导入有问题,于是答应客户帮他导入一遍数据库,但是导入数据库遇到了如下错误:

错误 SQL 查询:

/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;

MySQL 返回:

#1065 – Query was empty

看到错误,老谢瞬间蛋痛了,网上搜一圈也没找#1065啥意思,但是想到我们美国主机的数据库版本是5.1.61,国内是5.0.81,可能就是由于版本问题导致的,或许也跟phpmyadmin的版本有关,我们美国主机的phpmyadmin版本是3.4.9,国内的phpmyadmin居然还是2.7.0-pl1,再次蛋痛。。至于到底啥原因导致的错误,老谢也布吉岛,如果您知道,欢迎留言解惑,祭出谷歌大神,开始搜吧。。。

找到了一篇#1065 – Query was empty 的解决办法,按照这篇教程描述的办法,操作失败,面板提示我1分钟后执行操作,等了十几分钟尼玛数据库还是空的,又尝试了一遍,还是不行,无奈,另辟他径吧!

由于是国内的windows主机,突然想到应该是可以远程访问数据库的,如果可以就好办了,于是乎再祭出一尊大神navicat,输入服务器ip以及用户名、密码,连接,还真丫连接上了,于是就开始尝试导入数据库,嗯,还真丫导入进去了。。再进入国内的phpmyadmin查看数据库表,恩恩,无问题。。

navicat导入sql文件的操作方法如下:

phpmyadmin导入mysql遇到#1065 – Query was empty

Apache使用mod_limitipconn限制单个ip连接数

分类:运维技术日期:2012-03-12 - 11:23:47评论:9条作者:老谢

安装&下载

http://dominia.org/djao/limit/mod_limitipconn-0.22.tar.gz
tar -zxf mod_limitipconn-0.22.tar.gz
cd mod_limitipconn-0.22
/usr/local/apache/bin/apxs -c -i -a mod_limitipconn.c

检查httpd.conf里面是否有LoadModule limitipconn_module modules/mod_limitipconn.so,如果有则正常,继续向下看:

###下面就是对web目录下的文件下载限制 
<IfModule mod_limitipconn.c>
<Location /> #所限制的目录所在,此处表示主机的根目录
MaxConnPerIP 3 #所限制的每个IP并发连接数为3个
NoIPLimit image/* #对图片不做IP限制
</Location>
<Location /mp3> #所限制的目录所在,此处表示主机的/mp3目录
MaxConnPerIP 1 #所限制的每个IP并发连接数为1个
OnlyIPLimit audio/mpeg video #该限制只对视频和音频格式的文件
</Location>
</IfModule>

http重定向到https

分类:网站技术日期:2012-03-09 - 22:15:20评论:8条作者:老谢

老谢目前做了一个新站,全站采用https协议访问,所以需要http重定向到https,只需要在.htaccess加入下面规则既可:

RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^(.*) https://%{SERVER_NAME}/$1 [R,L]

代码来自:301 redirect from http to https (6 posts)

Tags: , , ,

PT是什么?怎么挂PT?

分类:乱七八糟日期:2012-03-07 - 16:41:39评论:22条作者:老谢

PT是什么?怎么挂PT?

经常有人说挂pt挂pt,可是好多人并不知道pt是什么,老谢在此之前也对PT一无所知,老谢在朋友的邀请下,有幸进入HDChina这个PT论坛,于是乎老谢开始了挂PT之旅!

首先需要说明,玩PT需要投入比较大的精力以及遵守比较严格的规定,如果没有足够的兴趣,则没有必要接着看下去了,玩pt要做好受虐的准备。

一、什么是PT?

大家肯定都用种子下载过BT,BT下载的Tracker则是公开的,大家拿到种子都可以下载,而PT(Private Tracker)则是私有的,PT其实也是BT的一种,最大的区别即PT为私密的小范围下载和进行流量统计,下面为网络上的一段解释:

BT下载时,BT客户端首先解析.torrent种子文件得到Tracker地址,然后连接Tracker服务器。Tracker服务器回应下载者的请求,提供其他下载者(包括发布者)的IP。下载者再连接其他下载者,根据.torrent文件,两者分别向对方告知自己已经有的块(数据),然后交换对方没有的数据。此时不需要其他服务器参与,分散了单个线路上的数据流量,因此减轻了服务器负担。Tracker是BT下载的一个重要组成部分,用于记录上下载用户的互连信息。而PT下载和BT下载的区别是PT下载的Tracker是私有的,BT下载的Tracker则是公开的。

PT下载的实现方法

有些人会说,PT既然是小范围内的活动,如何做到的呢?首先,划分范围最好的方式就是论坛。新会员必须通过前期的会员邀请才可以加入,邀请注册机制有效地控制了下载人数。

其次是通过passkey,登陆论坛后,系统会给该账号用户分配一个固定的passkey,用户下载的种子中,会包含passkey的信息。若没有passkey的认证通过,即便其他用户得到了种子,也不能进行下载。

PT的流量统计:

PT是什么?怎么挂PT?

二、怎么挂PT?

挂PT通过PT的客户端软件下载种子就可以了,客户端的软件推荐如下:

Windows 用户使用 uTorrent 或者 Azureus
Linux 用户使用 rTorrent , kTorrent 或者 libTorrent 等
MacOSX 用户使用 Transmission, Azureus

老谢使用的客户端是Transmission,安装在美国的一台vps上,我在我的pc上安装了Transmission Remote GUI进行管理。

一般PT论坛都有新手任务机制,就拿老谢加入的HDChina论坛来说,新手的考核任务如下:

请注意您的考核状态,请在30天内完成考核内容!到期未完成将会导致帐号被禁用!查看详情
当前:上传量=25.52 GB,还差4.48 GB;下载量=30.58 GB,已经完成;做种积分=124 ,还差3876

网上找了几点玩PT的建议,大家可以参考:

  • 如果自己带宽够大,尽量下载新的资源,然后自己做种,这样获取上行流量
  • 下载蓝种(free),不计下载只记上传,尽可能的可以平衡自己的分享率
  • 有的时候如果你已经在别处下到了某个资源,突然发现在PT站也有人发了同样的资源。那么你就可以下载该PT种子,然后利用BT客户端下载到同一个目录底下,BT客户端会自动探测到已有的文件,通过校验该目录之后即可直接上传做种了。
Tags: ,

Nginx反代后WordPress无法记录真实ip

分类:折腾日期:2012-03-05 - 14:23:38评论:10条作者:老谢

今天老谢查看评论页面,发现评论者的ip全都是nginx反代服务器的ip地址,真实的ip地址全看不到,这个问题不大不小,老谢是个完美主义者,不解决这个问题挺别扭的,于是乎谷歌之,找到了可行的方法,下面与大家分享:

这个方法需要Nginx的HttpRealIpModule模块,如果您按照CentOS编译安装Nginx(附:管理脚本)进行编译的Nginx则不需要再次编译,因为这个安装教程里面已经编译了这个模块,如果没有编译这个模块,需要重新编译这个模块后才可以用。

在Nginx前端添加下面语句:

proxy_set_header X-Real-IP $remote_addr;

PS:如果您之前配置过nginx前端反代,后端apache记录正确访问者ip,这里也不需要进行再次添加了。

这时候,客户真实IP会保存在$_SERVER[‘HTTP_X_REAL_IP’]变量中,如果使用php程序,输出:echo $_SERVER[‘HTTP_X_REAL_IP’];

修改WordPress根目录下的wp-config.php:,在第二行添加:

if (isset($_SERVER['HTTP_X_REAL_IP'])) {
$_SERVER['REMOTE_ADDR'] = $_SERVER['HTTP_X_REAL_IP'];
}

评论测试:

Nginx反代后WordPress无法记录真实ip

本文参考自:WordPress+Nginx+proxy取得真实IP

IE下图片链接有边框的解决办法

分类:网站技术日期:2012-03-04 - 18:28:42评论:14条作者:老谢

今天在修改一个页面,发现ie下显示图片链接有边框,如图所示:

IE下图片链接有边框的解决办法

解决办法如下:

img{ border:none;}

感谢独角鲸

Tags: ,

Nginx提示host not found in upstream

分类:运维技术日期:2012-03-04 - 0:00:36评论:2条作者:老谢

今天对nginx.conf进行修改,保存后进行语法检查,配置应该没问题,但是提示下面的信息,瞬间忧桑了,

nginx: [emerg] host not found in upstream “demo1.xj123.info” in /usr/local/nginx
nginx: configuration file /usr/local/nginx/conf/nginx.conf test failed

其中demo1.xj123.info是我的博客后端之一,从提示的错误和网上搜索一番来看,应该是找不到主机,于是ping了一下demo1.xj123.info,结果是可以ping通,这就令我费解了,而且cat /etc/resolv.conf里面的nameserver是正确的。

实在没头绪了,又敲了一次nginx -t竟然提示成功。

nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful

最后:这个问题就是由于找不到主机导致的,如果担心类似问题,可以修改hosts文件

Nginx 1.1.9配置PHP 5.3.10(php-fpm+fastcgi)

分类:运维技术日期:2012-03-03 - 15:04:43评论:4条作者:老谢

本文只介绍PHP的安装以及整合到Nginx,至于Nginx的安装教程请看:CentOS编译安装Nginx(附:管理脚本)

Nginx 1.1.9配置PHP 5.3.10(php-fpm+fastcgi)

wget http://vps.xj123.info/usr/lamp/php-5.3.10.tar.gz
tar -zxf php-5.3.10.tar.gz
cd php-5.3.10
./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --enable-fpm
make && make install
cp php.ini-production /usr/local/php/etc/php.ini

继续阅读…

Tags: , ,

php获取访问者ip地址

分类:程序设计日期:2012-03-03 - 12:08:45评论:5条作者:老谢

老谢目前需要这个功能来做点小东西,于是就网上找了一番,下面的代码直接复制走即可,如需要自己可以美化一下,摘抄自andrew_659的空间
演示地址http://67.215.236.139/ip.php

<html>
<head>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8" />
<title>公网ip查询</title>
</head>
<body>
<?php
$user_IP = ($_SERVER["HTTP_VIA"]) ? $_SERVER["HTTP_X_FORWARDED_FOR"] : $_SERVER["REMOTE_ADDR"];
$user_IP = ($user_IP) ? $user_IP : $_SERVER["REMOTE_ADDR"];
echo $user_IP."<br>";
?>
</body>
</html>

让vim支持中文编码(GB2312和Unicode编码UTF8)

分类:linux日期:2012-03-02 - 10:32:19评论:3条作者:老谢

有时候一些脚本,网上直接wget,里面有中文注释,这样用vim编辑脚本的时候一堆乱码,就比较蛋痛了!但是又懒得把脚本下载回来,修改后再上传,比较麻烦,于是乎,非常有必要让vim支持中文编码了!

返回自己的主目录,可以直接敲击cd命令,然后ls -al看下有没有.vimrc文件,如果没有就新建,加入下面的两行内容:

let &termencoding=&encoding
set fileencodings=utf-8,gbk,ucs-bom,cp936

保存后,再用vim编辑试试看,UTF8和GB2312都没有问题了!!