静思学吧 - 关注Wordpress插件,SEO,博客技巧和Graphite,Puppet,RPM等运维工具。
今天在我的测试机上升级Wordpress 到 3.4.2 时, 使用 自动升级 ,但是升级却带来灾难。不过学到了一些东西。其中包括 MySQL 提示: “ MySQL error 1045 (28000) : Access denied for user ... ”错误 和 WordPress 提示(实际是 Apache 的提示): “ 403 Forbiden : You don't have permission to access /wordpress/ on this server. " 的解决方法。
上图是 MySQL 的设置, 我添加了wordpress 用户,但却登录不了,提示错误。 下面我将提出这两个问题的解决方法。
一、 ERROR 1045 (28000): Access denied for user
大致的过程如下:
- 首先创建数据库: CREATE DATABASE wordpress;
- 添加用户和授权: GRANT ALL ON wordpress.* TO 'wordpress'@'localhost' IDENTIFIED BY '123456' ;
- 退出: exit
- 使用新建用户登录: mysql -uwordpress -p123456;
这里问题来了,出现上面的错误,登录不上。
网上有一些解决方法, 如:
- 刷新授权: FLUSH PRIVILEGES;
- 设置密码: SET PASSWORD FOR 'wordpress'@'localhost'='123456';
但是这些方法都不管用,试了之后新建的 wordpress 用户还是不能登录上去。
真正的解决方法如下(参考 MySQL error 1045(28000): Access denied for user ... ) :
对新建的用户新建一条授权记录,如下:
GRANT ALL ON wordpress.* TO 'wordpress'@'%' IDENTIFIED BY '123456' ;
其中 % 是通配符,代表所有主机。确定新添加的用户 wordpress 可以登录之后,再在 mysql 数据库的 user 表中删除这条记录。
二、 403 Forbiden : You don't have permission to access /wordpress/ on this server.
出问题的过程如下:
我想升级 WordPress 到 3.4.2, 然后点了自动升级, 升级过程中突然发现网站打不开了,提示:
Forbidden You don't have permission to access /wordpress/ on this server.
之前运行的好好的,一升级就出现这种问题了。
解决这个问题的方法就是修改 apache 的虚拟主机 定义, 添加以下两句:
Options FollowSymLinks AllowOverride All
更多信息可以参考: WordPress 修改固定链接 格式后 404 的解决方法 。