mysql在4.1版本之前,password加密的结果是十多位的字符串,4.1后password加密的结果是40位左右的字符串,但可用old_password函数替代password函数来解决过渡的问题,也可以更改my.conf中old_password=0来继续使用老的password函数。
今天碰到的问题是这样的,我的空间是租用的虚拟主机,之前一直用的是新的password函数,今天换了一下主机,mysql依然是5.0,但新主机my.conf把old_password启动了,搞的用户都无法登录,5.0mysql有old_password但没有new_password,我又改不了my.conf。
解决方法就是set:
mysql_query(“set old_passwords =0″,$db);
这问题其实不算问题,是我太愚蠢了。
备案是不太容易的,我去年夏天提交的申请到现在也没有结果,又碰到前几天的“网络严打”,我的几个不低俗的网站也不得不关张大吉,被迫开始了国外主机的试探。
使用国外主机碰到一个PHP、MYSQL的时区问题。不处理的话显示的时间都是美国时间。
PHP 5.1 以上提供了专门的函数切换时区:
date_default_timezone_set(‘Asia/Shanghai’);
Mysql可以通过以下查询语句实现时区切换:
set time_zone = ‘+8:00′;
我经过这样处理后基本OK了,美中不足的是MYSQL的timestamp字段还是老样子。
在Linux中架设网站其实不难,在Debian中更简单。
Linux操作系统用Debian,http服务器软件用lighttpd,它是个轻量级的服务器软件,如今很多酷站都有它的身影,动态语言用php,数据库用mysql,CMS用Drupal。
安装:
#apt-get install lighttpd php5-cgi php5-mysql mysql-server php5-gd
php5-gd是绘图库
配置:
#vi /etc/php5/cgi/php.ini
找到”cgi.fix_pathinfo=0″改为”cgi.fix_pathinfo=1″(文档中部)
#vi /etc/lighttpd/lighttpd.conf
更改网站目录:server.document-root =”/home/hu/www/endd.cn”
server.modules项增加一行,内容为:
“mod_fastcgi”
文件中添加:
fastcgi.server = (“.php” => ((
“bin-path” => “/usr/bin/php5-cgi”,
“socket” => “/tmp/php.socket”
)))
因为我们的网站不喜欢.php?p=**格式的URL,所以还需要把”mod_rewrite”前的注释去掉。
在文件中加内容:
fastcgi.server=( “.php” => ((
“bin-path” => “/usr/bin/php5-cgi”,
“socket” => “/tmp/php.socket”
)))
url.rewrite-final =(
“^/([^.?]*)\?(.*)$” => “/index.php?q=$1&$2″,
“^/([^.?]*)$” => “/index.php?q=$1″
)
安装drupal:
去官网下载软件包:http://www.drupalchina.org
#tar zxvf drupal-6.1.tar
#mv drupal-6.1/* /home/hu/www/endd.cn
#mysqld &
#/etc/init.d/lighttpd start
访问http://localhost就可以看到drupal的安装界面了,一路下一步一个功能完备的网站就OK了!