存档

文章标签 ‘php’

解决WordPress RSS错误,发现一个很容易忽视的地方

Dec 18th Sun, 2011/JiaJieChan/折腾/2,848 阅读/1 comment

rss其他造成RSS错误除了主题有空行、配置文件有空行,还有一个就是插件的问题,很多人都会忽视的一个问题,就是在开启插件的时候都会有相关的提示的,虽然部分插件出现警告后都依然能用,但是也会造成其他地方出错误的,就向下面的例子。

这个问题也是今天发现的,当我开启WP2Sinablog时就出现警告“这个插件在启用的过程中产生了 1 个字符的异常输出。如果您遇到了“headers already sent”错误、同步 feed(通常是 RSS)出错等问题,请尝试禁用或移除本插件。”,其实这里都已经提示了,所以要排查是否插件造成的,只要看看哪一个插件会出现这样的提示,基本就可以解决问题可。

上面所说的RSS错误就是打开feed的时候提示以下错误,当第三方订阅器就不会有这个问题,看来WP自带的RSS订阅器兼容性还不怎么行啊,区区的一个空行就会造成这个问题。

This page contains the following errors:

error on line 2 at column 6: XML declaration allowed only at the start of the document

Below is a rendering of the page up to the first error.

解决这个方法很简单,只需要打开提示错误的插件php文件,看看里面是否有空行将它删除就行了。

今天就写到这里,没有更新几天了,虽然这个问题不大但是也是大家很容易忽视的问题。

lnmp使用技巧, 常见问题解决方法

Aug 21st Sun, 2011/JiaJieChan/折腾/2,038 阅读/没有评论

对于大部分新手来说,都是使用centOS+Licess的lnmp一键安装包的吧(其实lnmp意思就是Linux+nginx+mysql+php)。本文中的方法也是基于该环境来实现的。在折腾lnmp的过程中,我也遇到了一系列的问题,下面对这些问题作一个归总。

1. nginx下WordPress的伪静态设置

因为nginx还不完全兼容Apache,所以造成一些不便,比如不支持.htaccess(即不能伪静态),那么如何解决这个问题呢?
编辑/usr/local/nginx/conf/nginx.conf文件,在server容器中添加下面这几行:

location / {
index index.html index.php;
if (-f $request_filename/index.html){
rewrite (.*) $1/index.html break;
}
if (-f $request_filename/index.php){
rewrite (.*) $1/index.php;
}
if (!-f $request_filename){
rewrite (.*) /index.php;
}
}

修改完成以后,执行如下命令重启lnmp即可:
/root/lnmp restart

2. 关于将多个域名绑定到同一目录

比如我想将www.zhukun.net和zhukun.net绑定到同一目录,要怎么实现呢?虽然在大部分美国虚拟主机上这两个域名是默认绑在同一目录的,但是在nginx下,它们是各自分离的。
最简单的方法就是在执行./vhost.sh命令添加虚拟主机的时候,同时把这两个域名加进去。当你执行./vhost.sh的时候,会提示你输入要绑定的域名,输入zhukun.net并回车,此时它会问你要不要添加更多的域名,输入Y并回车,再输入www.zhukun.net即可。

万一在添加虚拟主机的时候忘了怎么办?那就只能修改该虚拟主机的配置文件了。

在安装Licess的lnmp一键安装包时,会要求你先输入一个域名,此域名将直接绑定根目录,我们暂且称这个域名为主域名,主域名的配置文件在/usr/local/nginx/conf/nginx.conf下;而通过执行./vhost.sh命令添加的虚拟主机,其配置文件在/usr/local/nginx/conf/vhost/域名.conf之下。

打开相应的配置文件,在server容器中找到下面这一行:
server_name zhukun.net;

将其修改为如下内容即可:
server_name zhukun.net www.zhukun.net;

修改完之后,还要执行如下命令重启一下lnmp:
/root/lnmp restart

3. 关于pureFTPd添加的FTP用户登陆时出现530错误

首先一点是,FTP登陆时客户端会出现乱码,这个很好解决,把FTP客户端的编码设置成gb2312就可以了。重点是登陆时出现530错误怎么办。
个人建议在通过http://domain/ftp/install.php安装完pureFTPd以后,立即登陆SSH执行/root/pureftpd restart重启一下pureFTPd,一般就会OK,但有时还会出现此问题。

编辑:/usr/local/pureftpd/pure-ftpd.conf
找到 MinUID 100
将MinUID的数值改为一个更小的数值(比如2),然后执行/root/pureftpd restart重启pureftpd,就可以解决530问题。
FTP登陆成功后可以将MinUID重新改回100,再次重启pureftpd,仍然可以正常登陆。

4. WordPress后台更新主题或插件时,提示需要填写FTP信息

其实出现这个的问题就是Nginx的执行身份非文件属主身份。解决方法:

假设你的wordpress安装目录为/home/wwwroot/zhukun.net
执行:chown -R www /home/wwwroot/zhukun.net
执行上面的命令就可以将/home/wwwroot/zhukun下所有文件的属主改为www,这样就可以解决自动更新必须填FTP的问题。
注意:1,必须是把wordpress程序文件上传到空间以后再执行该命令,顺序不能颠倒;2,添加完虚拟主机以后,也必须把wordpress程序文件上传到空间以后,再执行该命令。

本文转自:seafly官方团队博客  http://seafly.592mb.com/post/303.html

对读者墙wp-reader-wall的美化及修改

Apr 4th Mon, 2011/JiaJieChan/折腾/7,088 阅读/6 comments