1 安装
1.1 CentOS5.1
• 所有需要安装的包都放在/usr/src下,解压也是解压在/usr/src下。
• 所有的软件都是安装在/usr/local下。
ps aux|grep mysql
编译安装有的时候安装不了,没办法安装下面表的方法就可以完全成功:
| 1. | 从http://www.mysql.com下载二进制版的Mysql安装包 | //这个MYSQL是二进制版的,不用编译 |
| 2. | # chmod 755 mysql-standard-5.0.15-linux-gnu-i686-glibc23.tar.gz |
// |
| 3. | # tar xfz mysql-standard-5.0.15-linux-gnu-i686-glibc23.tar.gz | //将解压后生成的目录,复制到/usr/local/下并改名为mysql |
| 4. | # groupadd mysql # useradd mysql -g mysql |
// 建立mysql组 //建立mysql用户并且加入到mysql组中 |
| 5. | # cp /usr/local/mysql/support-files/my-medium.cnf /etc/my.cnf |
在 support-files目录下有4个模版文件,我们选择其中一个座位Mysql的配置文件,覆盖/etc/my.cnf(系统默认的配置,其中设置了性能参数和Mysql的一些路径参数) |
| 6. | # cd /usr/local/mysql # ./scripts/mysql_install_db –user=mysql |
进入mysql目录 //初试化表并且规定用mysql用户来访问。初始化表以后就开始给mysql和root用户设定访问权限 |
| 7. | # chown -R root . | //设定root能访问/usr/local/mysql |
| 8. | # chown -R mysql data |
//设定mysql用户能访问/usr/local/mysql/data ,里面存的是mysql的数据库文件.这个目录是在/etc/my.cnf中有配置,在mysql_install_db时产生。 |
| 9. | # chown -R mysql data/. |
//设定mysql用户能访问/usr/local/mysql/data/mysql下的所有文件 |
| 10. | # chgrp -R mysql . |
//设定mysql组能够访问/usr/local/mysql |
| 11. | # /usr/local/mysql/bin/mysqld_safe –user=mysql & |
运行mysql 如果没有问题的话,应该会出现类似这样的提示: [1] 42264 # Starting mysqld daemon with databases from /usr/local/mysql/var 如果出现 mysql ended这样的语句,表示Mysql没有正常启动,你可以到log中查找问题,Log文件的通常在/etc/my.cnf中配置。大多数问题是权限设置不正确引起的。 |
| 12. | 用如下命令修改MYSQL密码 # /usr/local/mysql/bin/mysqladmin -u root password yourpassword |
//默认安装密码为空,为了安全你必须马上修改. |
| 13. | # cp support-files/mysql.server /etc/rc.d/init.d/mysqld # chmod 700 /etc/init.d/mysqld # chkconfig –add mysqld # chkconfig –level 345 mysqld on |
//copy编译目录的一个脚本 //设置使mysql每次启动都能自动运行 |
| 14. | # service mysqld start # netstat -atln |
//启动mysqld服务 //查看3306端口是否打开。要注意在防火墙中开放该端口。 |
5.2 安装apache
1:编译安装
tar zxvf httpd-2.2.8.tar.gz
cd httpd-2.2.8
./configure –prefix=/usr/local/apache2 –enable-so –enable-rewrite
echo $?
make && make install
/usr/local/apache2/bin/apachectl configtest
/usr/local/apache2/bin/apachectl start
/usr/local/apache/bin/apachectl stop
2:修改默认启动页
vi /usr/local/apache2/conf/httpd.conf
DirectoryIndex index.html 改为
DirectoryIndex index.html index.htm default.htm default.html index.php index.php3 index.jsp
#ServerName www.example.com:80 改为
ServerName www.example.com:80
3:apache 开机启动的办法
1:#echo “/usr/local/apache/bin/apachectl start” >>/etc/rc.local(系统启动时服务自动启动)
2:创建一个httpd启动脚本,内容如下:
cp /usr/local/apache2/bin/apachectl /etc/init.d/httpd
vi /etc/init.d/httpd
在第三行添加以下内容
#chkconfig:345 85 15
#description: Start and stops the Apache HTTP Server.
chmod +x /etc/rc.d/init.d/httpd
chkconfig –add httpd
修改乱码
步骤1:
在httpd.conf中将Include conf/extra/httpd-autoindex这个模块的注释去掉
@vi /usr/local/apache/conf/httpd.conf
步骤2:
在httpd-autoindex.conf中加入IndexOptions Charset=UTF-8
@vi /usr/local/apache/conf/extra/httpd-autoindex.conf
5.3 安装GD
1:安装ZLIB2
######zlib#############
tar zxvf zlib-1.2.3.tar.gz
cd zlib-1.2.3
./configure
make
make install clean
2:安装PNG
##########libpng###########
tar zxvf libpng-1.2.26.tar.gz
cd libpng-1.2.26
cp scripts/makefile.linux ./makefile
./configure –prefix=/usr/local/libpng
make
make install clean
3:安装freetype
##########freetype#########
cd freetype-2.3.5
./configure
make
make install
4:安装JPEG6
#########jpeg###############
tar zxvf jpegsrc.v6b.tar.gz
cd jpeg-6b
mkdir -pv /usr/local/jpeg/{,bin,lib,include,man/man1,man1}
./configure –prefix=/usr/local/jpeg –enable-shared –enable- static
make
make install
5:安装GD
########GD###########
tar zxvf gd-2.0.35.tar.gz
cd gd-2.0.35
./configure –with-png –with-freetype –with-jpeg=/usr/local/jpeg/
make
make install
5.4 安装php
1:安装LIBXML2
#####libxml2 #####
tar zxvf libxml2-2.6.31.tar.gz
cd libxml2-2.6.31
./configure –prefix=/usr/local/libxml2
make
make install
cp xml2-config /usr/bin
2::安装PHP5.2.5
#########php##########
tar zxvf php-5.2.5.tar.gz
cd php-5.2.5
./configure –prefix=/usr/local/php5 –with-mysql=/usr/local/mysql5 –with-apxs2=/usr/local/apache2/bin/apxs –with-jpeg-dir=/usr/local/jpeg –with-freetype-dir=/usr/local/include/freetype2 –with-zlib –with-png-dir=usr/local/libpng12 –with-libxml-dir=/usr/local/libxml2 –with-gd –enable-ftp –enable-sockets
make
make test
make install
3:配置
cp php.ini-dict /usr/local/php5/lib/php.ini
编辑httpd.conf
/usr/local/apache2/conf/httpd.conf
加载php模块,去掉注释,我的版本是缺省就启用的。
LoadModule php5_module modules/libphp5.so
加上下面两行
AddType application/x-httpd-php .php .phtml
AddType application/x-httpd-php-source .phps
5.5 安装zend
tar -zxvf ZendOptimizer-3.0.0-linux-glibc23- x86_64.tar.gz
cd ZendOptimizer-3.0.0-linux-glibc23-x86_64
./install
5.6 安装phpmyadmin
cp -rf phpMyAdmin-v2.11.5.2 /usr/local/apache2/htdocs/phpmyadmin
cd /usr/local/apache2/htdocs/phpmyadmin/
cp config.sample.inc.php config.inc.php
vi config.inc.php
$cfg['blowfish_secret'] = ”改为
$cfg['blowfish_secret'] = ‘dd’
只要不为空就可以了,这样就可以登陆,如果还有问题,就修改一下语言就解决“配置文件现在需要绝密的短语密码(blowfish_secret)”这个错误了。
**********************************************
安装zend提示成功后
php -v 却看不到zend版本 phpinfo()也是一样的原因:php.ini文件路径问题
解决方法
php -i | grep php.ini 就可以找到 当前php使用的php.ini文件
比如 编译安装时没有指定php.ini存放路径 我的系统中就在 /usr/local/lib下面
而一般zend默认安装后生成的php.ini在/etc/目录下面或/usr/local/Zend/etc
手动指定php使用zend opt生成的php.ini
php -c /etc/ -v
如果可以看到zend opt正确加载
那么做个连接就好了 连接到php默认读取的php.ini路径下面
比如
ln -sf /etc/php.ini /usr/local/lib[root@localhost /]# php -vPHP 4.4.2 (cli) (built: Jan 22 2006 12:59:19)Copyright (c) 1997-2006 The PHP GroupZend Engine v1.3.0, Copyright (c) 1998-2004 Zend Technologies with Zend Extension Manager v1.0.9, Copyright (c) 2003-2006, by Zend Technologies with Zend Optimizer v2.6.2, Copyright (c) 1998-2006, by Zend TechnologiesOk 正常了 phpinfo()看到的当然也是一样的
有的时候还有一些情况下 php -i 或php -v 在控制台下可以看到zend opt,
但是 apache 执行phpinfo的输出里面却看不到
一般是因为 调用php的时候zend模块不能加载, 比如AS4里面 就是这样的
因为 as4下面默认的php安装后读取库文件的路径 是在/usr/lib下面 ,
而php.ini文件中加载zend模块是在zend安装路径的lib目录中
比如/usr/local/Zend/lib
这时apache在执行php时 不能加载zend模块 所以 在控制台里php -v 可以正常
但是apache 却没有加载zend。 解决办法 先把zend模块copy到
/usr/lib里面 然后改一下php.ini里面zend加载模块部分
**********************************************
我在安装了 v3.3.0 v3.0.1 v.3.3.3几个版本,安装顺利,没有报错。却发现phpinfo信息里面只有with Zend Extension Manager 而没有 with Zend Optimizer v3.3.3, Copyright (c) 1998-2007, by Zend Technologies 这一行信息。
检查我的php.ini信息路径在/usr/local/php5/lib/php.ini,已经生成到/usr/local/Zend/etc/php.ini的链接文件,并且文件后面也追加了
[Zend]
zend_extension_manager.optimizer=/usr/local/Zend/lib/Optimizer-3.3.3
zend_extension_manager.optimizer_ts=/usr/local/Zend/lib/Optimizer_TS-3.3.3
zend_optimizer.version=3.3.3
zend_extension=/usr/local/Zend/lib/ZendExtensionManager.so
zend_extension_ts=/usr/local/Zend/lib/ZendExtensionManager_TS.so
相关的配置路径
测试了很多遍,找不到解决的办法,只是感觉和php的配置文件有关或没有生效,仔细在看phpinfo的信息发现
| Configuration File (php.ini) Path | /usr/local/php5 |
而我的php.ini文件是在/usr/local/php5/lib 下查看编译php信息看到–with-config-file-path=/usr/local/php5′ 看来是编译php时已经把php.ini的路径给修改了不是默认的/usr/local/php5/lib下的路径,
重新按照正确的php.ini路径安装配置或者直接
ln -s /usr/local/Zend/etc/php.ini /you_path/php.ini
重新启动apache
查看phpinfo信息
| Configuration File (php.ini) Path | /usr/local/php5 |
| Loaded Configuration File | /usr/local/Zend/etc/php.ini |
zend optimizer的信息也正确显示了。
*********************************************
配置Apache的虚拟目录
<VirtualHost 127.0.0.1>
ServerName www.yourdomain.com
DocumentRoot “/opt/iNewS4/htdocs” #域名的根目录直接指向静态目录,这样就可以直接使用域名访问静态首页
Alias /admincp “/opt/iNewS4\AdminCP” #这个是iNewS的后台管理地址,可以复杂一点
Alias /Install “/opt/iNewS4\Install” #这个可以在安装完成删除
</VirtualHost>
*****************************************
VSFTPD的安装网上有很多教程这里就不多说了,这里主要是针对做主机空间服务的朋友在安装好vsftpd后如何为用户增加ftp账号
先来看一看我们一般在*inux系统下面如何增加用户的
#adduser 用户名<———-你要加的用户名
#passwd 用户名<———-你要设置密码的用户名
回车后系统会给出以下提示:
Changing password for user XX用户名.
New password:
BAD PASSWORD: it does not contain enough DIFFERENT characters
Retype new password:
passwd: all authentication tokens updated successfully.
但像以上这样增加用户是不行的,加样加出来的用户为普通用户,有系统登陆权限,所以我要在adduser命令后后面加上参数,如下:
[root@srsman]# adduser -g ftp -s /sbin/nologin srsman
[root@srsman]# passwd beinan
Changing password for user beinan.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.
这样加出来的用户也是普通用户,但这个用户是不能登入系统的,只能是登入FTP
通过上面的命令加的用户系统会在/home目录下建立一个同名的文件夹,用户FTP上来后指向的目录也为此目录,如何为ftp用户指定到特定的目录呢?
命令如下:
[root@srsman]# adduser -d /opt/srsman -g ftp -s /sbin/nologin srsman
[root@srsman]# passwd srsman
Changing password for user beinan.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.
这样就为系统增加了一个名为srsman,目录指向为/opt/srsman的ftp用户
6:软件
ncurses
http://ftp.gnu.org/pub/gnu/ncurses/ncurses- 5.6.tar.gz
安装GD库和GD库所需的环境
zlib
http://www.zlib.net/zlib-1.2.3.tar.gz
jpeg
ftp://ftp.uu.net/graphics/jpeg/jpegsrc.v6b.tar.gz
freetype
http://download.savannah.gnu.org/releases/freetype/freetype- 2.3.5.tar.gz
png
ftp://ftp.simplesystems.org/pub/libpng/png/src/libpng- 1.2.26.tar.gz
GD
http://www.libgd.org/releases/gd-2.0.35.tar.gz
安装php必须安装libxml
wget ftp://xmlsoft.org/libxml2/libxml2-2.6.31.tar.gz
apache2.2.8
http://apache.mirror.phpchina.com/httpd/httpd- 2.2.8.tar.gz
phpmyadmin2.11.5.2
http://4.gxdx1.crsky.com/200804/phpMyAdmin- v2.11.5.2.rar
Zend3.3
http://downloads.zend.com/optimi … glibc21-i386.tar.gz
php5.2.5
http://cn.php.net/distributions/php- 5.2.5.tar.gz
mysql5.051
http://mirror.trouble- free.net/mysql_mirror/Downloads/MySQL- 5.0/mysql-5.0.51a.tar.gz