基于OpenBSD的wordpress中文版

在OpenBSD环境下搭建各种服务器的相关讨论。

版主: lionuxchenjun天地乾坤

回复
头像
leo
帖子: 2465
注册时间: 2010-01-21 3:27

基于OpenBSD的wordpress中文版

帖子 leo » 2010-01-21 13:01

wordpress有三个版本:wordpress.org, wordpress.com, wordpress MU,其中最流行的版本来自wordpress.org, 这是一个自安装的版本,你可以将它布置在你的虚拟主机上,wordpress.com的版本也是wordpress提供的免费的blog host版本,你不必有自己的虚拟主机就可以在wordpress提供的服务器上设置你的blog,wordpress MU(multi user)类似于wordpress的版本,但是允许用户在安装后设置很多不同的blog,我们这里不涉及wordpress mu版本,如果你有兴趣请自行参阅http://mu.wordpress.org ,下面我们简要说明wordpress.org和wordpress.com的区别,尽管我们这里仅讨论wordpress.org的blog,但是两者全是非常棒的blog程序,如果你没有虚拟主机,你也可以选择wordpress.com为你提供的免费blog。

wordpress.org:
1.自由使用
2.安装在你的独立主机或虚拟主机上
3.不包含广告(但是你可以设置自己广告)
4.有上百种插件和模板
5.可以进行完全的配置
6.分析和统计需要安装插件才可以实现
7.无限的用户帐号
8.需要安装
9.自由使用现有的域名

wordpress.com
1.自由使用
2.你的blog只能放在wordpress.com的主机上
3.blog上会显示官方的广告
4.可选择有限的插件和模板
5.如果你购买了premium服务才可扩展特性
6.内置的分析统计
7.有限的用户数量
8.安装很简单
9.如果你想使用自己的域名则属于premiun服务

如果你是一个资深用户、或这方面的专家、或使用blog用于商业目的,你可能会修改或定制你的站点,那么wordpress.org就是你的选择了。
首先下载wordpress2.91中文版,请读者注意,考虑到文章的实效性,在您阅读时,可能软件的版本已经升级,请自行到wordpress的主页上查找最近的或您自己的喜欢的版本。
我们这里介绍的是wordpreee2.9.1官方中文版。
下载地址为http://cn.wordpress.org/wordpress-2.9.1-zh_CN.tar.gz

先说一下我的安装环境:OpenBSD 4.6稳定版,i386平台,shell采用系统默认的ksh,未安装任何的package,为了节省时间我们采用Packages的安装方式,这也是OpenBSD官方推荐的第三方软件安装模式,这可以极大的缩短安装时间,节省系统资源,当然如果你需要控制编译过程,例如增加或删除某些选项,定制编译方式,你也可以采用ports的方式安装。另外本例中web服务器和mysql数据库在同一台主机上,否则你还要单独设置host文件。我们这里的设置的Packages路径为OpenBSD官方FTP服务器,以下是具体步骤,如果你使用的不是ksh请根据自己的shell:
一 . 设置packages路径:

代码: 全选

# export PKG_PATH=ftp://ftp.openbsd.org/pub/OpenBSD/4.6/packages/i386/ 
二 . 安装MySQL服务器:

代码: 全选

# [color=#ff6600]pkg_add mysql-server[/color] 
mysql-client-5.0.83: complete 
p5-DBD-mysql-4.010:p5-Net-Daemon-0.43: complete 
p5-DBD-mysql-4.010:p5-PlRPC-0.2018p0: complete 
p5-DBD-mysql-4.010:p5-DBI-1.607: complete 
p5-DBD-mysql-4.010: complete 
mysql-server-5.0.83: complete 
--- mysql-server-5.0.83 ------------------- 
You can find detailed instructions on how to install a database 
in /usr/local/share/doc/mysql/README.OpenBSD. 
安装完MySQL server后,会自动在系统上创建一个_mysql用户,让我们先来看一下:

代码: 全选

 
# [color=#ff6600]userinfo _mysql[/color] 
login _mysql 
passwd ************* 
uid 502 
groups _mysql 
change NEVER 
class daemon 
gecos MySQL Account 
dir /nonexistent 
shell /sbin/nologin 
expire NEVER 
从安装过程显示信息看,不但安装了mysql服务器,还安装了相关的一些依赖包,最后建议我们阅读/usr/local/share/doc/mysql/README.OpenBSD这个帮助文档以便熟悉如何在OpenBSD系统上设置MySQL服务器。

三 . 创建默认的数据库:
因为我们是在系统上第一次安装MySQL,需要用下列命令先创建一个默认的数据库:

代码: 全选

# [color=#ff6600]/usr/local/bin/mysql_install_db[/color] 
四 . 启动数据库

代码: 全选

# [color=#ff6600]mysqld_safe &[/color] 
这里说明一下,最后的 & 符号是让mysql进程在后台运行,如果你在VMWARE里运行时MySQL无法切换到后台,直接按CTRL+C断开,此时MYSQL会仍在后台运行,不必担心。
五 . 设定数据库本地root密码
我们这里这里密码是9971us,读者请根据自己的情况调整:

代码: 全选

# [color=#ff6600]mysqladmin -u root password '9971us'[/color] 
六 . 设定数据库远程root密码
我们这里这里密码是9971us,读者请根据自己的情况调整:

代码: 全选

# [color=#ff6600]mysqladmin -u root -h test.gobsd.org password '9971us'[/color] 
我们这里稍微解释一些,所谓的远程密码就是指从另一台计算机上登录到MYSQL数据库时的密码,你还需要设置本地的host文件,MySQL加密通过TCP连接发送的登录信息。
七 . 设置MySQL的配置文件my.cnf
这里还需要大致地说一下,在/usr/local/share/mysql/目录里包含了一系列MySQL的简单的配置文件:
my-small.cnf 内存小于64M仅运行MySQL服务器的主机使用这个配置文件。
my-medium.cnf 内存在32-64M之间,主要运行MySQL服务,或128M以上,MySQL和web服务器一起运行时使用这个配置文件。
my-large.cnf 内存是512M的重要运行MySQL使用这个配置文件。
my-innodb-heavy-4G.cnf 内存是1-2G,主要运行MySQL使用这个配置文件。
my-huge.cnf 内存4G以上,主要运行MySQL的主机使用这个配置文件。
读者请根据自己的情况用上述文件中的一个替换 /etc/my.cnf文件,如果你有特殊的需要,例如要修改socket或端口请自行调整。
我的主机是是512M,用my-media.cnf,所以使用下面的命令替换原来的My.cnf文件:

代码: 全选

# [color=#ff6600]cp /usr/local/share/mysql/my-medium.cnf /etc/my.cnf[/color] 
有一点需要提醒读者的是,如果你的MySQL仅用于基于PHP的web服务器,或者说你的MYSQL数据库和WEB服务器在一台主机上,那么禁用TCP连接对安装MySQL来说是比较安全的。
具体做法是编辑 /etc/my.cnf 文件,将里面的内容

代码: 全选

# skip-networking
前面的注释符去掉变成这样:

代码: 全选

 skip-networking
然后保存退出。

八 . 在login.conf里增加相关项:
默认情况下,用户_mysql和mysqld进程运行的登录级别是"daemon",在一台非常繁忙的服务器上,将让用户_mysql和mysqld进程运行在自己的登录级别上很明智。
例如调整打开文件等,你必须将下列内容加入到/etc/login.conf文件内,以便登录时mysql有自己的登录级别,否则其无法运行。

代码: 全选

mysql:\
:openfiles-cur=1024:\
:openfiles-max=2048:\
:tc=daemon:
然后重建login.conf.db文件

代码: 全选

# [color=#ff6600]cap_mkdb /etc/login.conf [/color]
九 . 设置MySQL自动启动
在/etc/rc.local里加入如下内容:

代码: 全选

if [ -x /usr/local/bin/mysqld_safe ] ; then 
su -c mysql root -c '/usr/local/bin/mysqld_safe >/dev/null 2>&1 &' 
echo -n ' mysql' 
fi 
到这一步,我们重新启动一下系统,看看MySQL的设置是否正常.
重新启动主机后,我们输入命令:

代码: 全选

 
# [color=#ff6600]top[/color] 
load averages: 0.17, 0.10, 0.09 08:01:49 
21 processes: 20 idle, 1 on processor 
CPU states: 0.0% user, 0.0% nice, 0.2% system, 0.0% interrupt, 99.8% idle 
Memory: Real: 24M/213M act/tot Free: 1342M Swap: 0K/502M used/tot 
PID USERNAME PRI NICE SIZE RES STATE WAIT TIME CPU COMMAND 
31656 root 18 0 556K 440K sleep pause 0:00 0.05% ksh 
[color=red]19510 _mysql 2 0 41M 18M sleep poll 0:00 0.00% mysqld[/color] 
17223 _pflogd 4 0 560K 312K sleep bpf 0:00 0.00% pflogd 
............................................ 
大家看到了吧,这里面有一个mysqld,说明mysql已经运行了,为了方便拷贝屏幕内容以便给读者做解释,我是远程连接上的MySQl所在主机,
实际上如果你在本地启动时就可以看到启动信息里,有一行:

代码: 全选

mysqlstandard daemons:cron
这说明mysql已经启动了。
如果你的mysql没有启动,请仔细检查一下上面的步骤,看看有没有遗漏,如果有请不上,如果还不行试试这样:
先建立一个目录 /var/run/mysql/,并将其所属用户及组设置成_mysql,否则后面重新启动时MySQL无法启动:

代码: 全选

# mkdir -p /var/run/mysql 
# chown -R _mysql:_mysql /var/run/mysql/
这个目录应该是mysql自动建立的,你如果没有这个目录,手动建立一个再试试。还有一点需要注意的是,看一下你的/tmp目录,它的属性应该是777,也即是像这样:

代码: 全选

drwxrwxrwt 4 root wheel 512 Dec 19 17:58 tmp
如果你的文件权限不是这样,改改试试。
好了,现在我们测试一下mysql服务器:

代码: 全选

 
# [color=#ff6600]mysql -p[/color] 
Enter password:9971us 
Welcome to the MySQL monitor. Commands end with ; or \g. 
Your MySQL connection id is 4 
Server version: 5.0.83-log OpenBSD port: mysql-server-5.0.83 
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
登录成功输入命令。

建立一个数据库
好的,现在我们要为我们的discuz论坛建立一个的数据库,我们这里假设数据库的名字为wordpress:

代码: 全选

 
mysql> [color=#ff6600]create database wordpress;[/color] 
Query OK, 1 row affected (0.01 sec) 
添加数据库用户
我们现在再向该数据库添加一个用户全权用户wpuser,密码是wptest:

代码: 全选

mysql> [color=#ff6600]grant all on wordpress.* to wpuser@localhost identified by 'wptest';[/color] 
Query OK, 0 rows affected (0.00 sec)
这里注意,论坛真正运行时并不需要全部的权限,安装你完成后读者请根据自己的情况,自行消减该用户权限。
退出mysql:

代码: 全选

 
mysql> [color=darkorange]quit[/color]
Bye
#
九 . 安装php5-mysql

代码: 全选

# [color=#ff6600]pkg_add php5-mysql[/color] 
libiconv-1.13: complete 
gettext-0.17p0: complete 
libxml-2.6.32p2: complete 
php5-core-5.2.10: complete 
php5-mysql-5.2.10: complete 
--- php5-core-5.2.10 ------------------- 
To enable the php5 module please create a symbolic 
link from /var/www/conf/modules.sample/php5.conf 
to /var/www/conf/modules/php5.conf. 
ln -s /var/www/conf/modules.sample/php5.conf \ 
/var/www/conf/modules 
The recommended php configuration has been installed 
to /var/www/conf/php.ini. 
Don't forget that the default OpenBSD httpd is chrooted 
into /var/www by default, so you may need to create support 
directories such as /var/www/tmp for PHP to work correctly. 
--- php5-mysql-5.2.10 ------------------- 
You can enable this module by creating a symbolic 
link from /var/www/conf/php5.sample/mysql.ini to 
/var/www/conf/php5/mysql.ini. 
ln -fs /var/www/conf/php5.sample/mysql.ini \ 
/var/www/conf/php5/mysql.ini 
#
并根据提示,创建下面的符号链接:

代码: 全选

# ln -s /var/www/conf/modules.sample/php5.conf \ 
> /var/www/conf/modules 
# ln -fs /var/www/conf/php5.sample/mysql.ini \ 
> /var/www/conf/php5/mysql.ini
并建立一个 /var/www/tmp目录,并将其属性设置为777

代码: 全选

# mkdir /var/www/tmp 
# chmod 777 /var/www/tmp
十 . 设置apache
OpenBSD系统自带了修补过的apache1.3,所以我们只需在/etc/rc.conf.local里加上如下内容,系统每次启动时就可以自动启动apache了:

代码: 全选

httpd_flags=""
如果你需要ssl连接,请自行参照用户手册,这里就不再展开讨论了。
修改 /var/www/conf/httpd.conf 文件中的下列内容:
将原内容:

代码: 全选

DirectoryIndex index.html
修改为:

代码: 全选

DirectoryIndex index.php
并删除或改名index.html文件;
如果两个文件全需要,则修改为:

代码: 全选

DirectoryIndex index.php index.html
十一 . 让MySQL运行在chroot环境内
因为OpenBSD自带的apcahe是chroot在 /var/www 目录内的,所以我们必须将MySQL运行所在的部件设置在这个目录下。根据FAQ上的说明:

代码: 全选

# mkdir -p /var/www/var/run/mysql
然后授权:

代码: 全选

# chown -R _mysql:_mysql /var/www/var/run/mysql/
因为运行环境变化了,还需要修改一下默认的mysql配置文件 /etc/my.cnf,把下面socket的地址更换为:/var/www/var/run/mysql/
原先的内容:

代码: 全选

# The following options will be passed to all MySQL clients 
[client] 
#password = your_password 
port = 3306 
socket = /var/run/mysql/mysql.sock 
# Here follows entries for some specific programs 
# The MySQL server 
[mysqld] 
port = 3306 
socket = /var/run/mysql/mysql.sock
更换后的内容:

代码: 全选

# The following options will be passed to all MySQL clients 
[client] 
#password = your_password 
port = 3306 
[color=#6699cc]socket = /var/www/var/run/mysql/mysql.sock[/color] 
# Here follows entries for some specific programs 
# The MySQL server 
[mysqld] 
port = 3306 
[color=#6699cc]socket = /var/www/var/run/mysql/mysql.sock[/color]
重新启动计算机或重启MySQL.
十二 . 安装WordPress
下载最新版的wordpress,并上传到服务器的/var/www/htdocs目录,如果你是直接OpenSSH到服务器,就这样:

代码: 全选

# cd /var/www/htdocs
# lynx [URL]http://cn.wordpress.org/wordpress-2.9.1-zh_CN.tar.gz[/URL]
解压缩:

代码: 全选

# tar zxf wordpress-2.9.1-zh_CN.tar.gz
我们看一下目录内容:

代码: 全选

# ls
apache_pb.gif
mod_ssl_sb.gif
bgplg
openbsd_pb.gif
blowfish.jpg
openbsdpower.gif
bsd_small.gif
index.html
lock.gif
logo23.jpg
logo24.jpg
openssl_ics.gif
smalltitle.gif
wordpress-2.9.1-zh_CN.tar.gz
wordpress
注意,这个wordpress目录是新生成的,我们要在里面修改配置文件:

代码: 全选

# cd /var/www/htdocs/wordpress
先将样本文件拷贝为正式的配置文件wp-config.php,然后修改这个正式的配置文件:

代码: 全选

# cp wp-config-sample.php wp-config.php
以下是该文件的内容:
<?php
/**
* WordPress基础配置文件。
*
* 本文件包含以下配置选项: MySQL设置, 数据库表名前缀,
* 密匙, WordPress语言设定以及ABSPATH. 如需更多信息,请访问
* {@link http://codex.wordpress.org/Editing_wp-config.php 编辑
* wp-config.php}Codex. MySQL设置具体信息请咨询您的空间提供商。
*
* 这个文件用在于安装程序自动生成 wp-config.php 配置文件,
* 你可以手动复制这个文件,并重命名为 wp-config.php,然后输入相关信息。
*
*
* @package WordPress
*/
// ** MySQL设置 - 具体信息来自您正在使用的主机 ** //
/** WordPress数据库的名称,替换掉 “putyourdbnamehere” */
define('DB_NAME', 'wordpress');
/** MySQL数据库用户名,替换掉 “usernamehere” */
define('DB_USER', 'wpuser');
/** MySQL数据库密码,替换掉 “yourpasswordhere” */
define('DB_PASSWORD', 'wptest');
/** MySQL主机名 */
define('DB_HOST', 'localhost');
/** 创建数据表时默认的文字编码 */
define('DB_CHARSET', 'utf8');
/** 数据库整理类型。如不确定请勿更改 */
define('DB_COLLATE', '');
/**#@+
* 身份密匙设定。
*
* 您可以随意写一些字符
* 或者直接访问 {@link https://api.wordpress.org/secret-key/1.1/ WordPress.org Secret-key页面将自动为您生成,任何修改都会导致cookies失效,所以用户必须重新登录}
*
* @since 2.6.0
*/
define('AUTH_KEY', '替换该字符串');
define('SECURE_AUTH_KEY', '替换该字符串');
define('LOGGED_IN_KEY', '替换该字符串');
define('NONCE_KEY', '替换该字符串');
/**#@-*/
/**
* WordPress数据表前缀。
*
* 如果您有在同一数据库内安装多个 WordPress 的需求,请为每个 WordPress 设置不同的数据表前缀。
* 前缀名只能为数字、字母加下划线。
*/
$table_prefix = 'wp_';
/**
* WordPress语言设置。默认为英语。
*
* 本项设定能够让 WordPress 显示您需要的语言。wp-content/languages 内应放置同名的 .mo 语言文件。
* 要使用 WordPress 简体中文界面,只需填入 zh_CN。
*/
define ('WPLANG', 'zh_CN');
/* 设定完毕,请保存该文件。 */
/** WordPress目录的绝对路径。 */
if ( !defined('ABSPATH') )
define('ABSPATH', dirname(__FILE__) . '/');
/** 设置WordPress变量和包含文件。 */
require_once(ABSPATH . 'wp-settings.php');
?>
上面的红色字部分为是wordpress设置mysql的数据库,也是我们要修改的地方,我们在前面已经为其建立了专门的数据库,这里输入的是我们当初的设定值,读者请根据自己的情况修改。
在浏览器上输入wordpress的地址,我这里是:[url=http://%E6%9C%8D%E5%8A%A1%E5%99%A8%E5%9C%B0%E5%9D%80/wordpress/wp-admin/install.php%EF%BC%8C%E8%AF%BB%E8%80%85%E5%8F%AF%E6%A0%B9%E6%8D%AE%E8%87%AA%E5%B7%B1%E7%BD%91%E7%AB%99%E7%9A%84%E6%83%85%E5%86%B5%E8%B0%83%E6%95%B4%EF%BC%8C%E4%BD%86%E6%98%AF%E8%A6%81%E5%9C%A8/var/www/htdocs%E8%BF%99%E4%B8%AAchroot%E7%9A%84%E7%8E%AF%E5%A2%83%E9%87%8C%EF%BC%8C%E5%A6%82%E6%9E%9C%E4%BD%A0%E7%9A%84%E7%BD%91%E7%AB%99%E5%8F%AA%E6%9C%89%E5%8D%9A%E5%AE%A2%EF%BC%8C%E5%B0%B1%E7%9B%B4%E6%8E%A5%E5%B0%86wordpress%E9%87%8A%E6%94%BE%E5%88%B0/var/www/htdocs%E5%B0%B1%E5%8F%AF%E4%BB%A5%E4%BA%86%E3%80%82]http://服务器地址/wordpress/wp-admin/install.php,读者可根据自己网站的情况调整,但是要在/var/www/htdocs这个chroot的环境里,如果你的网站只有博客,就直接将wordpress释放到/var/www/htdocs就可以了。[/url]
然后输入博客名称和联系方式:
图片
到这里,安装过程已经结束了,系统提示你管理员的用户名是admin,密码是.............,记住这个密码,这样你才可以登陆后台:
图片

头像
leo
帖子: 2465
注册时间: 2010-01-21 3:27

帖子 leo » 2010-01-21 13:02

用刚才给你的密码登录
图片
OK ,似乎一切很顺利,现在你就可以在你博客上一展身手了。
图片
现在一篇还没有呢,倒是真干净,:D
图片

到这里,wordpress的安装就结束了,你的第一件事情:最好先修改你的密码,或者将你的随机生成密码保存在保险之处。

leo@gobsd.org

头像
leo
帖子: 2465
注册时间: 2010-01-21 3:27

帖子 leo » 2010-02-18 22:20

平时如果你想管理你的wordpree,可以在浏览器中输入:
http://wordpress的地址/wp-admin/

会出现如下的登录画面后,键入你的用户名和密码后进入控制台,如果您还没有更改密码,我建议您进去后的第一件事就是将系统自动生成的密码换成自己熟悉的密码以防后患。
1.修改密码
2.使用加速
........
本来已经组织了后面的一些内容,后来实在感觉和OpenBSD关系不太大,另外考虑到每个人的兴趣爱好体验不同,我做的不见得符合每个人的爱好取向,这里还是留给大家自由发挥吧。
附件
p005.png
008.png

回复

在线用户

正浏览此版面之用户: 没有注册用户 和 24 访客