在安装好Ubuntu 7.10 Server后,我在上面安装了 wordpress 2.2.1 带中文包,shopex V4.7.2 和 discuz 5.5 ,这里记录一些碰到的技术要点和疑问备忘。
1、修改 mysql 5.0.45的默认字符集,我准备统一使用 utf8 编码,所以改了服务器端和客户连接的默认字符集为 utf8。方法为:
在[client]下添加:
default-character-set=utf8
在[mysqld]下添加:
default-character-set=utf8
在控制台下用 mysql -hlocalhost -uroot -p 进入数据库后,status显示:
Server characterset: utf8
Db characterset: utf8
Client characterset: utf8
Conn. characterset: utf8
当数据库的字符集是utf8是, 在[client]下添加:default-character-set=utf8,并且本地控制台的locale为utf8的,才能在控制台中正常显示中文。
但在wordpress中,使用默认的latin1字符集,它创建的数据表是用utf8编码,但是数据库的编码是latin1,好像也不影响使用?不知道Server characterset和Db characterset 对mysql数据库的实际应用上有没有什么影响?即只是数据库表用utf8编码,status显示上面的4个characterset是默认的latin1对数据库表使用的utf8编码有没有什么影响?
2、服务器时间设置
ubuntu server 默认使用 UTC 时间,比CST (中国标准时间)慢(重庆时区是慢8小时),如果安装的时候没有使用CST时间,可以这样改变:
sudo tzselect
然后按照提示选择地区(如亚洲),国家(如中国)国内地区(如四川), 然后在你的家目录下的.profile中添加一行TZ变量,如:
TZ='Asia/Chongqing'; export TZ
使改变永久生效。
在 wordpress 中需要在“设置”的“日期和时间”中选择时区,我这里选择“本 blog 的时区:
小时 (您所在的时区,比如北京时间就填 8
。)”3、启用 mod_rewrite 模块,使 wordpress和 shopex可以使用URL伪静态化。sudo a2enmod rewrite
这里要注意在控制台w3m下面开启wordpress的 伪静态化不能生效,必须在图形界面的全功能浏览器下面进行!我在这上面折腾了好久,最后安装了一个X,在X下用firefox设置才发现问题;
然后,sudo vim /etc/apache2/sites-enabled/000-default下面<Directory />和<Directory /var/www/>中的“AllowOverride None”改为“AllowOverride All",其它的部分没有改(如<Directory "/usr/lib/cgi-bin">),在我的应用中使用正常。
<Directory />
Options FollowSymLinks
AllowOverride All
</Directory>
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
# This directive allows us to have apache2's default start page
# in /apache2-default/, but still have / go to the right place
#RedirectMatch ^/$ /apache2-default/
</Directory>
然后:sudo /etc/init.d/apache2 restart 重启 apache2生效。
4、启动压缩传输功能:
sudo a2enmod deflate
重启 apache2生效。
5、启用目录默认文件功能:
如:输入 http://www.mydomain.com/ 实际上使用的是 http://www.mydomain.com/index.php 文件。
a2enmod dir
vim /etc/apache2/mods-enabled/dir.conf
<IfModule mod_dir.c>
DirectoryIndex index.php index.htm index.html index.cgi index.pl index.xhtml
</IfModule>
或者:
vim /etc/apache2/httpd.conf ,输入:
<IfModule mod_dir.c>
DirectoryIndex index.php index.htm index.html index.cgi index.pl index.xhtml
</IfModule>
也行。
6、使用 shopex 需要使用 Zend Optimizer 才能用
参见:在ubuntu环境中安装zend optimizer3.3.0
7、使用 shopex的上传图片自动生成略缩图功能和添加水印需要增加gd库
sudo apt-get install php5-gd
重启apache2 生效。
查看gd库生效没有可以调用一个写有一句phpinfo()的页面查看相关信息。
如名称为:phpinfo.php ,内容如下:
<?php phpinfo(); ?>
gd 库生效了会在其中显示相关信息,如:
gd
GD Support | enabled |
GD Version | 2.0 or higher |
FreeType Support | enabled |
... | ... |
等内容。
8、另外,还要注意一些目录的权限问题,在上面程序的安装说明中有。
还有,把wordpress的uploads 的所有者和组改为apache2的 www-data 就可以上传文件了,要不然把这个目录的权限改为777也行,个人感觉前者好像更好点?
9、另外,wordpress 和 discuz的邮件发送碰到一点问题: ubuntu server 下discuz 和 wordpress 程序不能用sendmail 正常发送非本地用户邮件的疑问 。解决了再补充一下。