热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

CentOS系统安装Apache,PHP,MySQL,vsftpd,subversion服务器环

之前买了一个vps,全新安装了apache,php,mysql,vsftpd,subversion。花了不少时间,遇到问题就请教baidu/google,从中也学了不少东西,在安装过程中把每个步骤都做了笔记,并且在必要的地方辅以说明,以备自己或有幸到来的朋友不时之需。首先做个约定,

之前买了一个vps, 全新安装了apache, php, mysql, vsftpd, subversion。 花了不少时间,遇到问题就请教baidu/google,从中也学了不少东西,在安装过程中把每个步骤都做了笔记,并且在必要的地方辅以说明,以备自己或 有幸到来的朋友不时之需。

首先做个约定,这个不是必须的,但一般大家都会遵守这个习惯
1. 所有要下载的源码包放在 /usr/local/src 下
2. 所有程序安装在 /usr/local 下

一. 准备编译安装环境

yum install gcc
yum install cpp
yum install gcc-c++
yum install ncurses
yum install ncurses-devel
# 由于是新装的系统,缺少c编译器,先使用yum工具安装之
yum install gd-devel php-gd
yum install zlib-devel
yum install freetype-devel freetype-demos freetype-utils
yum install libpng-devel libpng10 libpng10-devel
yum install libjpeg-devel
yum install ImageMagick
yum install flex
yum install ImageMagick-devel
yum install curl
yum install curl-devel
yum install libxml2-devel
# 用于安装php的库
yum install expat
yum install expat-devel
# 用于安装subversion的库

二. 安装mysql

wget http://mysql.he.net/Downloads/MySQL-5.1/mysql-5.1.44.tar.gz
# 下载mysql源码包。
grep mysql /etc/group
# 查询系统中是否有mysql这个用户组,没有则添加。
groupadd mysql
# 增加一个名为mysql的用户组。
grep mysql /etc/passwd
# 查询系统中是否有mysql这个用户,没有则添加。
useradd mysql -g mysql -M -s /sbin/nologin
#增加一个名为mysql的用户。
-g:指定新用户所属的用户组 (group)
-M:不建立根目录
-s:定义其使用的shell,/sbin/nologin代表用户不能登录系统。

cd /usr/local/src
tar -zxvf mysql-5.1.44.tar.gz
cd mysql-5.1.44
./configure --prefix=/usr/local/mysql --with-unix-socket-path=/tmp/mysql.sock --localstatedir=/usr/local/mysql/data --with-charset=utf8 --without-debug --enable-assembler --with-client-ldflags=-all-static --with-mysqld-ldflags=-all-static
make
make install

./scripts/mysql_install_db
# 初始化系统库。

cp support-files/my-medium.cnf /etc/my.cnf -fv
# 设置mysql配置文件。-f,删除目标中同名的文件或目录,并且不给任何提示。

cp support-files/mysql.server /etc/init.d/mysqld
# 添加到起动脚本

chmod 700 /etc/init.d/mysqld
cd /usr/local
chmod 750 mysql -R
chown -R mysql.mysql /usr/local/mysql
# 设置所有者,mysql起动时会以mysql用户的身份运行,这样可以提高系统的安全性。
chown -R mysql.mysql /usr/local/mysql/data
cd /usr/local/mysql/libexec
cp mysqld mysqld.old
strip mysqld
chkconfig --add mysqld
# 添加一个服务
chkconfig --level 345 mysqld on
# 设置开机时起动
service mysqld start
# 启动mysql服务
ln -s /usr/local/mysql/bin/mysql /sbin/mysql
ln -s /usr/local/mysql/bin/mysqladmin /sbin/mysqladmin
ln -s /usr/local/mysql/bin/mysqldump /sbin/mysqldump
mysqladmin -uroot password "**************"
# 设置root帐户的密码
mysql -uroot -p
mysql>use mysql;
mysql>delete from user where password="";
# 删除用于本机匿名连接的空密码帐号
mysql>flush privileges;
mysql> show databases;

三. 安装apache

cd /usr/local/src/
wget http://archive.apache.org/dist/httpd/httpd-2.2.14.tar.gz
chmod +x httpd-2.2.14.tar.gz
tar -zxvf httpd-2.2.14.tar.gz
# 下载并解压apache源文件

cd httpd-2.2.14
./configure --prefix=/usr/local/apache2 --enable-so --enable-rewrite=share --enable-dav=share --enable-dav-fs
--enable-so 
指定允许DSO(动态共享对像)
--enable-rewrite=share 
开启Rewrite支持,以实现URL静态化,建议开启。
--enable-dav-fs
开启WebDAV支持,svn服务器等需要
make
make install
# 如果没有错误的话,那么Apache就已经安装在/usr/local/apache2目录中了
/usr/local/apache2/bin/apachectl start
# 启动服务
cp /usr/local/apache2/bin/apachectl /etc/rc.d/init.d/httpd
vim /etc/rc.d/init.d/httpd
在 #!/bin/sh 下增加如下两行
# chkconfig: 35 70 30
# description: Apache
chkconfig --add httpd
service httpd stop
service httpd start
# 将apache添加为随机启动

四. 安装php

cd /usr/local/src
wget http://cn.php.net/distributions/php-5.2.13.tar.gz
tar -zxvf php-5.2.13.tar.gz
# 下载并解压php源文件

cd php-5.2.13
./configure --prefix=/usr/local/php5 --with-mysql=/usr/local/mysql --with-apxs2=/usr/local/apache2/bin/apxs --with-config-file-path=/usr/local/php5 --with-gd --with-jpeg-dir --with-png-dir --with-ttf --with-zlib --enable-mbstring --enable-ftp --with-freetype-dir --with-libxml-dir --with-curl
make
make test
make install
# 编译安装php

cp php.ini-dist /usr/local/php5/php.ini
vi /usr/local/apache2/conf/httpd.conf
加上:
AddType application/x-httpd-php .php
查找DirectoryIndex,修改为
DirectoryIndex index.html index.php
# 修改php配置文件

yum install autoconf
cd /usr/local/src/php-5.2.13/ext/pdo_mysql
/usr/local/php5/bin/phpize
./configure --with-php-cOnfig=/usr/local/php5/bin/php-config --with-pdo-mysql=/usr/local/mysql
make
make install
# 安装php的pdo_mysql扩展

五. 安装vsftpd

yum -y install vsftpd*
yum -y install pam*
yum -y install db4*
# 安装vsftpd
chkconfig vsftpd on
useradd vsftpd -M -s /sbin/nologin
userdel -r ftp
useradd ftp -M -s /sbin/nologin
更多centos下vsftpd安装与配置请参考 http://os.51cto.com/art/201002/184610.htm

六. 安装subversion

cd /usr/local/src
tar -zxvf apr-1.3.9.tar.gz
cd apr-1.3.9
./configure --prefix=/usr/local/apr
make
make install

cd /usr/local/src
tar -zxvf apr-util-1.3.9.tar.gz
cd apr-util-1.3.9
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
make
make install

tar -zxvf subversion-1.5.7.tar.gz
tar -zxvf subversion-deps-1.5.7.tar.gz
./configure --prefix=/usr/local/subversion --with-apxs=/usr/local/apache2/bin/apxs --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util
make
make install


推荐阅读
author-avatar
dasda
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有