Skip navigation.

exploreopera

| Help

Sign up | Help

在ubuntu下安装wordpress及其注意事项

在自己的服务器上安装成功了,这里记个流水账吧,把自己搜到的资料整理一下,同时写一下自己遇到的问题,希望对后来人有帮助。

1、安装 Apache2+PHP5+MySQL

sudo apt-get install apache2 libapache2-mod-security libapache2-mod-php5 php5 php5-gd mysql-server php5-mysql phpmyadmin

2、配置php.ini

sudo gedit /etc/php5/apache2/php.ini

如果没有下面这句或者被注释,加入这句或取消前面的英文分号”;”
extension=mysql.so

3、配置apache2.conf

sudo gedit /etc/apache2/apache2.conf

加载mod_rewrite模块,加入:
LoadModule rewrite_module /usr/lib/apache2/modules/mod_rewrite.so

加载mod_deflate模块,加入:
LoadModule deflate_module /usr/lib/apache2/modules/mod_deflate.so

想加什么模块,记住它们都在/usr/lib/apache2/modules/这里。

加入一个虚拟主机:

<virtualhost localhost>
DocumentRoot /var/www/
<directory>
Options FollowSymLinks
AllowOverride all
</directory>
</virtualhost>

完成,安装好后apache和mysql会自动启动。

什么优化、安全性都不用去考虑,因为这个Server只属于你自己。
以后只需要记住这几个命令就行了。

sudo /etc/init.d/apache2 restart (重启apache)
sudo gedit /etc/php5/apache2/php.ini (配置php.ini)
sudo gedit /etc/apache2/apache2.conf (配置apache2.conf)
/var/www/(主目录位置)

4. 设置数据库并安装运行wordpress。

我是自己运行的mysql数据库,因此要事先建个数据库和数据库用户供wordpress使用。

$mysql -uroot -p$$$$; 其中$$$$是你数据库的root账户密码。默认为空。进入SQL命令行

mysql> CREATE DATABASE wordpress; (先不要急着试,看完本文后再操作不迟) 其中wordpress是建立的数据库名

下面就要建立一个用户并对它赋予足够的权限
mysql> GRANT ALL PRIVILEGES ON wordpress.* TO wpuser@localhost IDENTIFIED BY "$$$$$$"; 其中新建的用户名是wpuser,密码是$$$$$(替换成你自己想用的密码),如果数据库服务器和wordpress不再一台主机上,则wpuser@后面要用*代替。


最后把下载的WordPress放到/var/www/目录下面,为防止乱码了,找到wordpress/wp-includs下面的wp-db.php文件找到:

$this->dbh = @mysql_connect($dbhost, $dbuser, $dbpassword);
在下面加上:

$this->query("SET NAMES 'utf8'" );
服务器架好了,现在你用它调试插件、模板、Rewrite都可以。

最后使用
使用http://localhost/wordpress/
或者http://127.0.0.1/wordpress/访问就可以进行正常的安装了,其中要提供数据库的一些信息,就可以完成。

也可以手动设置数据库,方法是拷贝wordpress下面的wp-config-sample.php到wp-config.php,并按照说明填入数据库的设置项目。

5.卸载和重新安装。

如果安装出错,想重新安装,怎么办?涉及到两方面,对于数据库可以在sql命令下用drop database XXX的方式干掉数据内容。对于wordpress只需要删除wordpress目录下的wp-config.php即可。


6. 问题:

如果设置好并运行wordpress出现了下面的提示,恭喜你,你遇到了非常common的问题。

Warning: Invalid argument supplied for foreach() in /home/liurd/wordpress/wp-includes/capabilities.php on line 31

Warning: Cannot modify header information - headers already sent by (output started at /home/liurd/wordpress/wp-includes/capabilities.php:31) in /home/liurd/wordpress/wp-includes/pluggable.php on line 313

Warning: Cannot modify header information - headers already sent by (output started at /home/liurd/wordpress/wp-includes/capabilities.php:31) in /home/liurd/wordpress/wp-includes/pluggable.php on line 314

Warning: Cannot modify header information - headers already sent by (output started at /home/liurd/wordpress/wp-includes/capabilities.php:31) in /home/liurd/wordpress/wp-includes/pluggable.php on line 275

这个是由于数据库编码等一些列问题造成的,我时遇到了这个问题了,是因为我的mysql数据库默认编码是latin-1的。可通过下面SQL命令之一来查询:

>show variables like ‘%server%’;
>show variables like “%colla%”;

可以通过改变mysql默认编码来解决这个问题,windows下找my.ini文件,linux下则可以修改/etc/mysql/my.cnf解决,例如加入:default-character-set=utf8等等方法。

另一种方法则可以在建库的时候指定字符集:我就是通过这样的方法的:如在建wordpress数据库的时候通过下面的命令:

>create database wordpress default character set utf8;


多个Email客户端pop Gmail帐户的方法Picasa找不到图片问题的解决方法

Comments

avatar
好文,谢谢了。

By co2co, # 29. April 2007, 06:13:55

Write a comment

Comment
(BBcode and HTML is turned off for anonymous user comments.)

Please type this security code : 973496

Smilies