Archive for the ‘apache、php、mysql’ Category
Apache下实现域名301跳转
Written by admin on 2009/02/10 – 08:00 -准备把域名www.domain1.com 301跳转到www.domain2.com
在apache的域名配置文件(虚拟主机配置文件中),比如目录:/etc/httpd/conf.d/ 目录下的abc.conf是配置文件。
打开此文件
在其中设置:
<VirtualHost *:80>
ServerName www.domain1.com
RedirectMatch Permanent ^/(.*) http://www.domain2.com/$1
</VirtualHost>
保存后重起apache服务器即可。
为PHP增加mbstring扩展
Written by admin on 2008/11/07 – 08:00 -最近安装drupal,安装完毕总是提示需要PHP mbstring扩展,以便处理大字符集(Unicode 库)。
本人安装的是CentOS5.2,所以直接在root权限下运行 yum install php-mbstring
安装完毕重新启动apache。
但安装过程中,如果php有更新,那么原来的zend optimizer需要重新安装。
安装过程参考可以参见我之前的文章。
安装完成后,重新启动apache,运行php -v 发现zend optimizer和eAccelerator和Zend Extension的安装信息未出现。
并且发现/etc目录下的php.ini未更新,但/usr/local/Zend/etc下的php.ini是刚更新的。
于是备份/etc/php.ini,将/usr/local/Zend/etc/php.ini覆盖到/etc目录下,
运行命令 /usr/sbin/apachectl restart 重新启动apache后再运行php -v,可看见zend optimizer和eAccelerator和Zend Extension的信息了。
修改apache设置,支持UTF8和GBK
Written by admin on 2008/07/03 – 08:00 -原本将apache默认设置成强制GBK编码解释网站,使得后来安装UTF8的网站代码时出现乱码的情况!
解决方法,修改/etc/httpd/conf/httpd.conf 文件,将其中AddDefaultCharset行注释掉(前面加#)。
保存后重新启动apache:/usr/sbin/apachectl restart
这样就即可解释GBK的网站,又能解释UTF8的网站了!
让PHP支持GD图片缩略库
Written by admin on 2008/06/18 – 08:00 -原本搜索了很多资料,发现GD库的安装非常麻烦!由于很多网站需要用到自动生成缩略图功能,所以在php中还是一个十分重要的插件,于是还是进行了一番研究。
今天发现在CentOS中,只需安装php-gd - 5.1.6-15.el5.i386即可!
安装后重起apache。
apache设置不当,造成部分中文编码乱码
Written by admin on 2008/05/08 – 08:00 -中文编码多种多样,UTF-8、GBK等。
当安装GBK代码的页面至apache后发现每次都要在浏览器中手动调节成GB2312或者GBK才能正确显示中文,否则就是乱码!
后发现是apache强制以UTF-8默认显示页面。
修改方法:
修改/etc/httpd/conf/httpd.conf中的AddDefaultCharset UTF-8改成AddDefaultCharset GBK,重新然后执行/usr/sbin/apachectl restart重新启动apache即可解决问题!
apache 虚拟主机 rewrite组件设置要点
Written by admin on 2008/04/22 – 08:00 -先声明我的系统是centos5.1,默认安装了apache,并且自动开启了rewrite。
但还是先判断apache是否安装了rewrite组件:
打开httpd.conf查找有没有下面一段
LoadModule rewrite_module modules/mod_rewrite.so
(注意前面应该没有#)
如果存在上面这行,说明rewrite组件已被安装。
然后是修改虚拟主机设置文件,我把此文件放置在/etc/httpd/conf.d 目录下(此目录下所有*.conf文件在apache启动时都会被载入)。暂且称虚拟主机文件为abc.conf,编辑此文件。
其中某虚拟主机配置如下:
<Directory “xxxx(web路径)”>
……
AllowOverride all
……
</Directory>
<VirtualHost *:80>
……
</VirtualHost>
红色部分必须修改成all,而不是none。然后在网站根目录下新建.htaccess文件,将rewrite内容写入其中即可。
CentOS 5.1下安装eAccelerator
Written by admin on 2008/03/29 – 08:00 -http://www.eaccelerator.net 下载最新的eaccelerator,我下载的版本是0.9.5.2,文件名为eaccelerator-0.9.5.2.tar.bz2
安装前确定是否已经安装了phpize和gcc,如果没有安装,则运行如下安装命令,(由于centos属于redhat衍生的linux发行版,所以用yum。)
#yum install php-devel
……(安装过程省略)
#yum install gcc
……(安装过程省略)
以下是编译安装eaccelerator命令:
# tar xvf eaccelerator-0.9.5.2.tar.bz2
# cd cd eaccelerator-0.9.5.2
# export PHP_PREFIX=”/usr”
# $PHP_PREFIX/bin/phpize
# ./configure
–enable-eaccelerator=shared
–with-php-config=$PHP_PREFIX/bin/php-config
# make
# make install
安装成功后,编辑php.ini文件,我的这个文件在/etc/目录下。
在文件最后加入如下内容:
extension=”eaccelerator.so” (php扩展安装模式)
eaccelerator.shm_size=”16″ (共享内存大小,简单测试感觉16M已经足够了)
eaccelerator.cache_dir=”/home/eaccelerator” (缓存目录,之后要建立)
eaccelerator.enable=”1″
eaccelerator.optimizer=”1″
eaccelerator.check_mtime=”1″
eaccelerator.debug=”0″
eaccelerator.filter=”"
eaccelerator.shm_max=”0″
eaccelerator.shm_ttl=”0″
eaccelerator.shm_prune_period=”0″
eaccelerator.shm_only=”0″
eaccelerator.compress=”1″
eaccelerator.compress_level=”9″
然后建立/home/eaccelerator目录,作为缓存目录,并且设置成777权限。
#chmod 777 /home/eaccelerator
测试安装是否成功只需要重启apache
#apachectl restart
如果没有报错,则再运行:
#php -v
看eaccelerator和版本是否出现在结果中。如果出现了,则安装成功。
ubuntu7.1安装discuz!6.0
Written by admin on 2008/02/02 – 08:00 -在http://www.discuz.com/download/install.htm 下载了GBK版本的。其中也有安装说明,但是本人并不是通过ftp上传,并且是ubuntu系统没有root权限,所以设置目录权限的方法与说明中的内容不同。
先解压缩下载到运行的web目录,然后将upload目录更改为bbs目录
#sudo mv upload bbs
然后运行http://domain/bbs/install.php 察看相关目录情况。
其中一下目录和文件需要更改访问权限:
config.inc.php 可读
./templates 可读
./attachments 可写
./customavatars 可写
./forumdata 可写
./forumdata/templates 可写
./forumdata/cache 可写
./forumdata/threadcaches 可写
./forumdata/logs 可写
把所有目录设置可写权限,运行#sudo chmod 777 目录/文件名
再次确认所有目录都可写以后,下一步。
设置数据库相关信息,设置discuz登录密码等。
设置成功后即可登陆论坛。
ubuntu7.1 安装zend optimizer3.3.0
Written by admin on 2008/02/02 – 08:00 -phpchina下载地址为:
http://downloads.phpchina.com/zend/optimizer/3.3.0/
需要下载的文件是: ZendOptimizer-3.3.0-linux-glibc21-i386.tar.gz
将下载的文件解压:
$ sudo tar vxfz ZendOptimizer-3.3.0-linux-glibc21-i386.tar.gz
解压ZendOptimizer

$ cd ZendOptimizer-3.3.0-linux-glibc21-i386
进入安装目录
$ ls
查看相应的安装文件
ZendOptimizer目录结构

install.sh就是执行安装的脚本文件.
$ sudo ./install.sh
执行安装脚本后,就可以看到安装欢迎界面.
安装初始界面

按回车键,进入下一步.
接着,系统显示许可证协议
许可证协议

按回车键,跳过协议内容.
确认协议许可

系统显示是否认同该协议.选择yes,按回车键确认.进入下一步.
确认ZendOptimizer的安装路径,缺省安装路径是/usr/local/Zend
ZendOptimizer安装路径

指定php配置文件php.ini的路径,ubuntu的php配置文件路径为:
/etc/php5/apache2/php.ini
指定php.ini路径

系统询问是否使用apache web服务器
选择yes,按回车键确认,进入下一步.
选择apache服务器

apache2ctl

系统要求指定apache2ctl路径, 选择ok,按回车键确认
复制安装所需文件到系统
系统复制文件

系统提示有配置文件发生变更
系统配置文件变更提示

按回车键,进入下一步.
ZendOptimizer安装完毕

系统安装完毕.按回车键,进入下一步
重启apache

重启中

重启apache.
重启成功

ubuntu7.1 安装apache mysql php
Written by admin on 2008/01/30 – 08:00 -1、安装LAMP组件
系统->系统管理->新立得软件包管理器, 打开新立得,编辑 –> 使用任务分组标记软件包 –> 勾选 LAMP Server,然后安装,其中配置阶段会要求设置mysql的登陆密码。
随后测试apache安装是否成功,在浏览器中输入http://localhost 或者http://127.0.0.1 看是否有显示。
测试mysql安装是否成功,在shell中输入mysql -u root -p,输入mysql root用户的密码。如果出现mysql> 则表示安装成功。
2、安装phpmyadmin
sudo apt-get install phpmyadmin
期间会要求选择apache的版本,选择apache2(因为是2.x版本。)
安装后在浏览器中输入http://localhost/phpmyadmin 看能否浏览phpmyadmin界面,输入用户名密码并能正确访问。则说明phpmyadmin安装成功。
3、配置
启用 mod_rewrite 模块:
sudo a2enmod rewrite
让apache支持.htm .html .php
sudo gedit /etc/apache2/apache2.conf
在文件后面加上
AddType application/x-httpd-php .php .htm .html
重启apache
sudo /etc/init.d/apache2 restart
如果出现:
* Restarting web server apache2
apache2: Could not reliably determine the server’s fully qualified domain name, using 127.0.1.1 for ServerName
apache2: Could not reliably determine the server’s fully qualified domain name, using 127.0.1.1 for ServerName
则继续sudo gedit /etc/apache2/apache2.conf
在文件后面加上:ServerName 127.0.0.1
再重启apache试试
sudo /etc/init.d/apache2 restart
——————
记住以下几个命令和位置
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/ (主目录位置)
/var/www/cgi-bin/ (CGI 程序)

