2013年3月14日星期四

CentOS 6.2编译安装Apache2.4.1+MySQL5.5.21+PHP5.4


 操作系统:CentOS 6.2 32位
  准备篇:一、配置好IP、DNS 、网关,确保使用远程连接工具能够连接服务器二、配置防火墙,开启80端口、22、21端口

  三、关闭SELINUX

  vi /etc/selinux/config

  #SELINUX=enforcing #注释掉

  #SELINUXTYPE=targeted #注释掉

  SELINUX=disabled #增加

  :wq 保存,关闭

  shutdown -r now #重启系统

  四 、系统约定

  软件源代码包存放位置:/usr/local/src

  源码包编译安装位置:/usr/local/软件名字

  五、下载软件包

  1、下载apache

  http://www.apache.org/dist/httpd/httpd-2.4.1.tar.gz

  2、下载MySQL

  http://mysql.mirror.kangaroot.net/Downloads/MySQL-5.5/mysql-5.5.21.tar.gz

  3、下载php 5.4

  4、下载cmake(MySQL编译工具)

  http://www.cmake.org/files/v2.8/cmake-2.8.7.tar.gz

  5、下载libmcrypt(PHPlibmcrypt模块)

  ftp://mcrypt.hellug.gr/pub/crypto/mcrypt/libmcrypt/libmcrypt-2.5.7.tar.gz

  6、下载apr(Apache库文件)

  http://mirror.bit.edu.cn/apache/apr/apr-1.4.6.tar.gz

  7、下载apr-util(Apache库文件)

  http://mirror.bit.edu.cn/apache/apr/apr-util-1.4.1.tar.gz

  用WinSCP远程连接到服务器,把下载好的软件上传到服务器/usr/local/src下面

  六、安装编译工具及库文件(使用CentOS yum命令安装)yum install make apr* autoconf automake gcc gcc-c++ zlib-devel openssl openssl-devel pcre-devel gd kernel keyutils patch perl kernel-headers compat* mpfr cpp glibc libgomp libstdc++-devel ppl cloog-ppl keyutils-libs-devel libcom_err-devel libsepol-devel libselinux-devel krb5-devel zlib-devel libXpm* freetype libjpeg* libpng* php-common php-gd ncurses* libtool* libxml2 libxml2-devel patch

  安装篇

  以下是用putty工具远程登录到服务器,在命令行下面操作的

  1、安装libmcrypt

  cd /usr/local/src

  tar zxvf libmcrypt-2.5.7.tar.gz #解压

  cd libmcrypt-2.5.7 #进入目录

  ./configure #配置

  make #编译

  make install #安装

  2、安装cmake

  cd /usr/local/src

  tar zxvf cmake-2.8.7.tar.gz

  cd cmake-2.8.7

  ./configure

  make #编译

  make install #安装

  3、安装apr

  cd /usr/local/src

  tar zxvf apr-1.4.6.tar.gz

  cd apr-1.4.6

  ./configure --prefix=/usr/local/apr

  make

  make install

  4、安装apr-util

  tar zxvf apr-util-1.4.1.tar.gz

  cd apr-util-1.4.1

  ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/bin/apr-1-config

  make

  make install

  5、安装mysql

  groupadd mysql #添加mysql组

  useradd -g mysql mysql -s /bin/false #创建用户mysql并加入到mysql组,不允许mysql用户直接登录系统

  mkdir -p /data/mysql #创建MySQL数据库存放目录

  chown -R mysql:mysql /data/mysql #设置MySQL数据库目录权限

  mkdir -p /usr/local/mysql #创建MySQL安装目录

  cd /usr/local/src

  tar zxvf mysql-5.5.21.tar.gz #解压

  cd mysql-5.5.21

  回到cmake目录,删除cmakecache.txt文件

  rm -f CMakeCache.txt

  cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/data/mysql -DSYSCONFDIR=/etc #配置

  make #编译

  make install #安装

  cd /usr/local/mysql

  cp ./support-files/my-huge.cnf /etc/my.cnf #拷贝配置文件(注意:/etc目录下面默认有一个my.cnf,直接覆盖即可)

  vi /etc/my.cnf #编辑配置文件,在 [mysqld] 部分增加

  datadir = /data/mysql #添加MySQL数据库路径

  ./scripts/mysql_install_db --user=mysql #生成mysql系统数据库

  cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld #把Mysql加入系统启动

  chmod 755 /etc/init.d/mysqld #增加执行权限

  chkconfig mysqld on #加入开机启动

  vi /etc/rc.d/init.d/mysqld #编辑

  basedir = /usr/local/mysql #MySQL程序安装路径

  datadir = /data/mysql #MySQl数据库存放目录

  service mysqld start #启动

  vi /etc/profile #把mysql服务加入系统环境变量:在最后添加下面这一行

  export PATH=$PATH:/usr/local/mysql/bin

  下面这两行把myslq的库文件链接到系统默认的位置,这样你在编译类似PHP等软件时可以不用指定mysql的库文件地址。

  ln -s /usr/local/mysql/lib/mysql /usr/lib/mysql

  ln -s /usr/local/mysql/include/mysql /usr/include/mysql

  shutdown -r now #需要重启系统,等待系统重新启动之后继续在终端命令行下面操作

  mysql_secure_installation #设置Mysql密码

  根据提示按Y 回车输入2次密码

  或者直接修改密码/usr/local/mysql/bin/mysqladmin -u root -p password "123456" #修改密码

  service mysqld restart #重启

  到此,mysql安装完成!

  6、安装apache2cd /usr/local/src

  tar -zvxf httpd-2.4.1.tar.gz

  cd httpd-2.4.1

  mkdir -p /usr/local/apache2 #创建安装目录

  ./configure --prefix=/usr/local/apache2 --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-ssl --enable-ssl --enable-module=so --enable-rewrite --enable-cgid --enable-cgi #配置

  make #编译

  make install #安装

  /usr/local/apache2/bin/apachectl -k start #启动

  vi /usr/local/apache2/conf/httpd.conf #编辑配置文件

  找到:#ServerName www.example.com:80

  修改为:ServerName www.osyunwei.com:80

  找到:DirectoryIndex index.html

  修改为:DirectoryIndex index.html index.php

  找到:Options Indexes FollowSymLinks

  修改为:Options FollowSymLinks #不显示目录结构

  找到AllowOverride None

  修改为:AllowOverride All #开启apache支持伪静态,有两处都做修改

  LoadModule rewrite_module modules/mod_rewrite.so #取消前面的注释,开启apache支持伪静态

  vi /etc/profile #添加apache服务系统环境变量

  在最后添加下面这一行

  export PATH=$PATH:/usr/local/apache2/bin

  cp /usr/local/apache2/bin/apachectl /etc/rc.d/init.d/httpd #把apache加入到系统启动

  vi /etc/init.d/httpd #编辑文件

  在#!/bin/sh下面添加以下两行

  #chkconfig:2345 10 90

  #descrption:Activates/Deactivates Apache Web Server

  chown daemon.daemon -R /usr/local/apache2/htdocs #更改目录所有者

  chmod 700 /usr/local/apache2/htdocs -R #更改apache网站目录权限

  chkconfig httpd on #设置开机启动

  /etc/init.d/httpd start

  service httpd restart

  7、安装php

  cd /usr/local/src

  tar -zvxf php-5.3.10.tar.gz

  cd php-5.3.10

  mkdir -p /usr/local/php5 #建立php安装目录

  ./configure --prefix=/usr/local/php5 --with-config-file-path=/usr/local/php5/etc --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-mysql-sock=/tmp/mysql.sock --with-gd --with-iconv --with-freetype --with-jpeg --with-png --with-zlib --with-libxml --enable-xml --enable-discard-path --enable-magic-quotes --enable-safe-mode --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curlwrappers --enable-mbregex --enable-fastcgi --enable-force-cgi-redirect --enable-mbstring --enable-ftp --enable-gd-native-ttf --with-openssl --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --enable-soap --without-pear --with-gettext --with-mime-magic --enable-suhosin --enable-session --with-mcrypt --with-jpeg    #配置

  make #编译

  make install #安装

  mkdir /usr/local/php5/etc

  cp php.ini-production /usr/local/php5/etc/php.ini #复制php配置文件到安装目录

  rm -rf /etc/php.ini #删除系统自带的配置文件

  ln -s /usr/local/php5/etc/php.ini /etc/php.ini #创建配置文件软链接

  vi /usr/local/php5/etc/php.ini #编辑

  找到:;open_basedir =

  修改为:open_basedir = .:/tmp/ #防止php木马跨站,重要!!

  找到:disable_functions =

  修改为:disable_functions = passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,ini_alter,ini_alter,
ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server,escapeshellcmd,dll,popen,
disk_free_space,checkdnsrr,checkdnsrr,getservbyname,getservbyport,disk_total_space,posix_ctermid,
posix_get_last_error,posix_getcwd, posix_getegid,posix_geteuid,posix_getgid,
posix_getgrgid,posix_getgrnam,posix_getgroups,posix_getlogin,posix_getpgid,posix_getpgrp,posix_getpid, posix_getppid,posix_getpwnam,posix_getpwuid, posix_getrlimit, posix_getsid,posix_getuid,posix_isatty, posix_kill,posix_mkfifo,posix_setegid,posix_seteuid,posix_setgid, posix_setpgid,posix_setsid,posix_setuid,posix_strerror,posix_times,posix_ttyname,posix_uname

  #列出PHP可以禁用的函数,如果某些程序需要用到这个函数,可以删除,取消禁用。

  找到:;date.timezone =

  修改为:date.timezone = PRC

  找到:expose_php = On

  修改为:expose_php = OFF #禁止显示php版本的信息

  找到:display_errors = On

  修改为:display_errors = OFF #关闭错误提示

  8、配置apache支持phpvi /usr/local/apache2/conf/httpd.conf #编辑apache配置文件

  在LoadModule php5_module modules/libphp5.so这一行下面添加、

  AddType application/x-httpd-php .php (注意:php .php这个点前面有一个空格)

  service httpd restart #重启apache

  service mysqld restart #重启mysql

  测试篇cd /usr/local/apache2/htdocsvi index.php #输入下面内容

  
  phpinfo();

  ?>

  :wq! #保存

  在客户端浏览器输入服务器IP地址,可以看到相关的配置信息!

  网站程序上传到/usr/local/apache2/htdocs目录里面,如果安装有问题,请检查目录权限

  确保改目录为以下权限

  chown daemon.daemon -R /usr/local/apache2/htdocs

  chmod -R 700 /usr/local/apache2/htdocs

  至此,CentOS 6.2编译安装Apache2.4.1+MySQL5.5.21+PHP5.4配置完成。

CentOS 6.2中国区下载链接


centos logo

CentOS出人意料的在RHEL6.2发布不到十天内发布了新版本。这个版本主要的新特性包括:

  • 改进和增强存储和文件系统性能
  • 支持PCI-E 3.0和USB 3.0
  • 支持多种新款10G网络适配器和主机总线适配器,以及两用网络适配器
  • 简化配置和部署以太网光纤通道(FCoE)
  • Virtualization 3.0 beta

  • 1.北京电信通下载站
    64位DVD版ISO下载BT种子:
    http://mirrors.btte.net/centos/6.2/isos/x86_64/CentOS-6.2-x86_64-bin-DVD...
    64位DVD版ISO下载地址:
    http://mirrors.btte.net/centos/6.2/isos/x86_64/CentOS-6.2-x86_64-bin-DVD...
    http://mirrors.btte.net/centos/6.2/isos/x86_64/CentOS-6.2-x86_64-bin-DVD...
    64位CD版LiveCD ISO(698M)下载地址:
    http://mirrors.btte.net/centos/6.2/isos/x86_64/CentOS-6.2-x86_64-LiveCD.iso
    无需安装,刻录后课从CD上引导计算机,进入CentOS 6.2
    64位DVD版LiveCD ISO(2G)下载地址:
    http://mirrors.btte.net/centos/6.2/isos/x86_64/CentOS-6.2-x86_64-LiveDVD...
    64位网络引导安装盘ISO下载地址:
    http://mirrors.btte.net/centos/6.2/isos/x86_64/CentOS-6.2-x86_64-netinst...
    64位最小安装盘CD版ISO下载地址:
    http://mirrors.btte.net/centos/6.2/isos/x86_64/CentOS-6.2-x86_64-minimal...
    32位DVD版ISO下载BT种子:
    http://mirrors.btte.net/centos/6.2/isos/i386/CentOS-6.2-i386-bin-DVD1to2...
    32位DVD版ISO下载地址:
    http://mirrors.btte.net/centos/6.2/isos/i386/CentOS-6.2-i386-bin-DVD1.iso
    http://mirrors.btte.net/centos/6.2/isos/i386/CentOS-6.2-i386-bin-DVD2.iso
    32位CD版LiveCD ISO(696M)下载地址:
    http://mirrors.btte.net/centos/6.2/isos/i386/CentOS-6.2-i386-LiveCD.iso
    无需安装,刻录后可从CD上引导计算机,进入CentOS 6.2
    32位DVD版LiveCD ISO(2G)下载地址:
    http://mirrors.btte.net/centos/6.2/isos/i386/CentOS-6.2-i386-LiveDVD.iso
    无需安装,刻录后可从DVD上引导计算机,进入CentOS 6.2
    32位网络引导安装盘ISO下载地址:
    http://mirrors.btte.net/centos/6.2/isos/i386/CentOS-6.2-i386-netinstall.iso
    32位最小安装盘CD版ISO下载地址:
    http://mirrors.btte.net/centos/6.2/isos/i386/CentOS-6.2-i386-minimal.iso
    2.泰安移动下载站
    64位DVD版ISO下载BT种子:
    http://mirrors.ta139.com/centos/6.2/isos/x86_64/CentOS-6.2-x86_64-bin-DV...
    64位DVD版ISO下载地址:
    http://mirrors.ta139.com/centos/6.2/isos/x86_64/CentOS-6.2-x86_64-bin-DV...
    http://mirrors.ta139.com/centos/6.2/isos/x86_64/CentOS-6.2-x86_64-bin-DV...
    64位CD版LiveCD ISO(698M)下载地址:
    http://mirrors.ta139.com/centos/6.2/isos/x86_64/CentOS-6.2-x86_64-LiveCD...
    无需安装,刻录后课从CD上引导计算机,进入CentOS 6.2
    64位DVD版LiveCD ISO(2G)下载地址:
    http://mirrors.ta139.com/centos/6.2/isos/x86_64/CentOS-6.2-x86_64-LiveDV...
    64位网络引导安装盘ISO下载地址:
    http://mirrors.ta139.com/centos/6.2/isos/x86_64/CentOS-6.2-x86_64-netins...
    64位最小安装盘CD版ISO下载地址:
    http://mirrors.ta139.com/centos/6.2/isos/x86_64/CentOS-6.2-x86_64-minima...
    32位DVD版ISO下载BT种子:
    http://mirrors.ta139.com/centos/6.2/isos/i386/CentOS-6.2-i386-bin-DVD1to...
    32位DVD版ISO下载地址:
    http://mirrors.ta139.com/centos/6.2/isos/i386/CentOS-6.2-i386-bin-DVD1.iso
    http://mirrors.ta139.com/centos/6.2/isos/i386/CentOS-6.2-i386-bin-DVD2.iso
    32位CD版LiveCD ISO(696M)下载地址:
    http://mirrors.ta139.com/centos/6.2/isos/i386/CentOS-6.2-i386-LiveCD.iso
    无需安装,刻录后可从CD上引导计算机,进入CentOS 6.2
    32位DVD版LiveCD ISO(2G)下载地址:
    http://mirrors.ta139.com/centos/6.2/isos/i386/CentOS-6.2-i386-LiveDVD.iso
    无需安装,刻录后可从DVD上引导计算机,进入CentOS 6.2
    32位网络引导安装盘ISO下载地址:
    http://mirrors.ta139.com/centos/6.2/isos/i386/CentOS-6.2-i386-netinstall...
    32位最小安装盘CD版ISO下载地址:
    http://mirrors.ta139.com/centos/6.2/isos/i386/CentOS-6.2-i386-minimal.iso
    3.搜狐下载站
    64位DVD版ISO下载BT种子:
    http://mirrors.sohu.com/centos/6.2/isos/x86_64/CentOS-6.2-x86_64-bin-DVD...
    64位DVD版ISO下载地址:
    http://mirrors.sohu.com/centos/6.2/isos/x86_64/CentOS-6.2-x86_64-bin-DVD...
    http://mirrors.sohu.com/centos/6.2/isos/x86_64/CentOS-6.2-x86_64-bin-DVD...
    64位CD版LiveCD ISO(698M)下载地址:
    http://mirrors.sohu.com/centos/6.2/isos/x86_64/CentOS-6.2-x86_64-LiveCD.iso
    无需安装,刻录后课从CD上引导计算机,进入CentOS 6.2
    64位DVD版LiveCD ISO(2G)下载地址:
    http://mirrors.sohu.com/centos/6.2/isos/x86_64/CentOS-6.2-x86_64-LiveDVD...
    64位网络引导安装盘ISO下载地址:
    http://mirrors.sohu.com/centos/6.2/isos/x86_64/CentOS-6.2-x86_64-netinst...
    64位最小安装盘CD版ISO下载地址:
    http://mirrors.sohu.com/centos/6.2/isos/x86_64/CentOS-6.2-x86_64-minimal...
    32位DVD版ISO下载BT种子:
    http://mirrors.sohu.com/centos/6.2/isos/i386/CentOS-6.2-i386-bin-DVD1to2...
    32位DVD版ISO下载地址:
    http://mirrors.sohu.com/centos/6.2/isos/i386/CentOS-6.2-i386-bin-DVD1.iso
    http://mirrors.sohu.com/centos/6.2/isos/i386/CentOS-6.2-i386-bin-DVD2.iso
    32位CD版LiveCD ISO(696M)下载地址:
    http://mirrors.sohu.com/centos/6.2/isos/i386/CentOS-6.2-i386-LiveCD.iso
    无需安装,刻录后可从CD上引导计算机,进入CentOS 6.2
    32位DVD版LiveCD ISO(2G)下载地址:
    http://mirrors.sohu.com/centos/6.2/isos/i386/CentOS-6.2-i386-LiveDVD.iso
    无需安装,刻录后可从DVD上引导计算机,进入CentOS 6.2
    32位网络引导安装盘ISO下载地址:
    http://mirrors.sohu.com/centos/6.2/isos/i386/CentOS-6.2-i386-netinstall.iso
    32位最小安装盘CD版ISO下载地址:
    http://mirrors.sohu.com/centos/6.2/isos/i386/CentOS-6.2-i386-minimal.iso
    MD5校验码:
    26fdf8c5a787a674f3219a3554b131ca CentOS-6.2-x86_64-bin-DVD1.iso
    b0b03502875490417c9f8cb9fe8ce6d6 CentOS-6.2-x86_64-bin-DVD2.iso
    8e344eb002995ddd5946f47e7397e644 CentOS-6.2-x86_64-LiveCD.iso
    0d90d6ec1afca4a469ce9d7dc6c063e1 CentOS-6.2-x86_64-LiveDVD.iso
    20dac370a6e08ded2701e4104855bc6e CentOS-6.2-x86_64-minimal.iso
    7e7f4161a5c8c49032655e5f4ecd1f07 CentOS-6.2-x86_64-netinstall.iso
    8c976288ed53dc97439f7ab5854f2648 CentOS-6.2-i386-bin-DVD1.iso
    9c0d7d967c950ce794dc74f460281a46 CentOS-6.2-i386-bin-DVD2.iso
    1b8441b6f4556be61c16d9750da42b3f CentOS-6.2-i386-LiveCD.iso
    6e8451df8c80337590dd703c378e8504 CentOS-6.2-i386-LiveDVD.iso
    cc4fbd16bd305f5bf6731b4b10f8fd18 CentOS-6.2-i386-minimal.iso
    8930132831efa890bb2952adafde0475 CentOS-6.2-i386-netinstall.iso

    CentOS 6.2 Minimal 编译安装LAMP实录



    花了两天的时间来实践编译安装LAMP最新版,过程十分顺利……

    安装好Centos 6.2 Minimal后,第一件事导入Fedora EPEL repo安装源、安装yum优先级控制软件并升级内核:


    rpm -ivh http://mirrors.sohu.com/fedora-epel/6/x86_64/epel-release-6-7.noarch.rpm
    rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6
    yum -y install yum-priorities
    yum update
    ---------------------------------------------------------------------------

    編譯前準備工作

    卸载yum或rpm安装的amp软件(CentOS Minimal不需要)

    rpm -e httpd
    rpm -e mysql
    rpm -e php
    yum -y remove httpd
    yum -y remove php
    yum -y remove mysql-server mysql
    yum -y remove php-mysql
    安裝編譯工具

    安装编译工具gcc gcc-c++make automake autoconf kernel-devel
    安装PHP所需依赖,如libxml2-devel openssl-devel curl-devel libjpeg-devel libpng-devel等

    yum -y install gcc gcc-c++ make automake autoconf kernel-devel ncurses-devel libxml2-devel openssl-devel curl-devel libjpeg-devel libpng-devel pcre-devel libtool-libs freetype-devel gd zlib-devel file bison patch mlocate flex diffutils readline-devel glibc-devel glib2-devel bzip2-devel gettext-devel libcap-devel libmcrypt-devel
    安裝下載工具

    yum -y install wget
    下载所需的源码
    下载apache(http://httpd.apache.org)

    wget http://labs.renren.com/apache-mirror//httpd/httpd-2.4.2.tar.gz

    下载MySQL(http://mysql.mirror.kangaroot.net/Downloads/MySQL-5.5/)

    wget http://mysql.mirror.kangaroot.net/Downloads/MySQL-5.5/mysql-5.5.25.tar.gz

    下载php(http://www.php.net)

    wget http://cn.php.net/get/php-5.4.4.tar.gz/from/this/mirror

    下载cmake(MySQL编译工具)

    wget http://www.cmake.org/files/v2.8/cmake-2.8.8.tar.gz

    下载libmcrypt(PHPlibmcrypt模块)

    wget ftp://mcrypt.hellug.gr/pub/crypto/mcrypt/libmcrypt/libmcrypt-2.5.7.tar.gz

    下载apr(Apache库文件)

    wget http://mirror.bit.edu.cn/apache//apr/apr-1.4.6.tar.gz

    下载apr-util(Apache库文件)

    wget http://labs.mop.com/apache-mirror//apr/apr-util-1.4.1.tar.gz

    下載APR iconv(Apache库文件)

    wget http://labs.mop.com/apache-mirror//apr/apr-iconv-1.2.1.tar.gz
    開始編譯安裝

    安装libmcrypt

    cd /usr/local/src
    tar zxf libmcrypt-2.5.7.tar.gz
    cd libmcrypt-2.5.7
    ./configure && make && make install
    安装cmake

    cd /usr/local/src
    tar zxf cmake-2.8.8.tar.gz
    cd cmake-2.8.8
    ./configure && make && make install
    安装Apr

    cd /usr/local/src
    tar zxf apr-1.4.6.tar.gz
    cd apr-1.4.6
    ./configure --prefix=/usr/local/apr && make && make install
    安装Apr-util

    cd /usr/local/src
    tar zxf apr-util-1.4.1.tar.gz
    cd apr-util-1.4.1
    ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/bin/apr-1-config && make && make install
    安装Apr-iconv

    cd /usr/local/src
    tar zxf apr-iconv-1.2.1.tar.gz
    cd apr-iconv-1.2.1
    ./configure --prefix=/usr/local/apr-iconv --with-apr=/usr/local/apr/bin/apr-1-config && make && make install
    安装Mysql

    (準備工作)
    #添加mysql组并创建用户mysql并加入到mysql组,不允许mysql用户直接登录系统
    groupadd mysql && useradd -g mysql mysql -s /bin/false
    #创建MySQL数据库存放目录并设置MySQL数据库目录权限
    mkdir -p /var/data/mysql && chown -R mysql:mysql /var/data/mysql
    #创建MySQL安装目录
    mkdir -p /usr/local/mysql
    #進入源碼目錄解壓mysql源代碼并進入源碼目錄
    cd /usr/local/src && tar zxvf mysql-5.5.25.tar.gz && cd mysql-5.5.25
    #配置、編譯和安裝
    cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/var/data/mysql -DSYSCONFDIR=/etc && make && make install

    (配置工作)

    cd /usr/local/mysql
    cp ./support-files/my-huge.cnf /etc/my.cnf #拷贝配置文件(注意:/etc目录下面默认有一个my.cnf,直接覆盖即可)
    vi /etc/my.cnf #编辑配置文件,在 [mysqld] 部分增加

    datadir = /var/data/mysql #添加MySQL数据库路径
    ./scripts/mysql_install_db --user=mysql #生成mysql系统数据库
    cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld #把Mysql加入系统服務
    chmod 755 /etc/init.d/mysqld #增加执行权限
    (開啟自啟動)

    chkconfig mysqld on #加入开机启动
    vi /etc/rc.d/init.d/mysqld #编辑Mysql服务参数

    basedir = /usr/local/mysql #MySQL程序安装路径
    datadir = /var/data/mysql #MySQl数据库存放目录

    service mysqld start #启动Mysql服务
    vi /etc/profile #把mysql服务加入系统环境变量:在最后添加下面这一行

    export PATH=$PATH:/usr/local/mysql/bin

    #下面这两行把myslq的库文件链接到系统默认的位置,这样你在编译类似PHP等软件时可以不用指定mysql的库文件地址
    ln -s /usr/local/mysql/lib/mysql /usr/lib/mysql && ln -s /usr/local/mysql/include/mysql /usr/include/mysql

    shutdown -r now #需要重启系统,等待系统重新启动之后继续在终端命令行下面操作

    mysql_secure_installation #设置Mysql密码

    根据提示按Y,回车输入2次密码
    或者直接修改密码

    /usr/local/mysql/bin/mysqladmin -u root -p password "123456" #修改密码

    service mysqld restart #重启
    安装Apache2


    cd /usr/local/src && tar -zvxf httpd-2.4.2.tar.gz
    cd httpd-2.4.2
    mkdir -p /usr/local/apache2 #创建安装目录
    ./configure --prefix=/usr/local/apache2 --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-apr-iconv=/usr/local/apr-iconv --with-ssl --enable-ssl --enable-so --enable-deflate=shared --enable-expires=shared --enable-headers=shared --enable-rewrite=shared --enable-static-support #配置、編譯和安装

    编译参数解释:
    --prefix=/usr/local/apache:指定安装目录
    --with-apr=/usr/local/apr #指定apr目錄
    --with-apr-util=/usr/local/apr-util #指定apr-util目錄
    --with-apr-iconv=/usr/local/apr-iconv #指定apr-iconv目錄
    --enable-so:允许运行时加载DSO模块
    --enable-deflate=shared:将deflate模块编译为DSO
    --enable-expires=shared:将expires模块编译为DSO
    --enable-headers=shared:将headers模块编译为DSO
    --enable-rewrite=shared:将rewrite模块编译为DSO
    --enable-static-support:使用静态连接(默认为动态连接)编译所有二进制支持程序
    更详细的编译参数解释:http://lamp.linux.gov.cn/Apache/ApacheMenu/programs/configure.html
    1
    /usr/local/apache2/bin/apachectl -k start #启动
    (配置工作)
    vi /usr/local/apache2/conf/httpd.conf #编辑配置文件
    找到:#ServerName www.example.com:80
    修改为:ServerName www.localhost.com.cn:80
    找到:DirectoryIndex index.html
    修改为:DirectoryIndex index.html index.php
    找到:Options Indexes FollowSymLinks
    修改为:Options FollowSymLinks #不显示目录结构
    找到:AllowOverride None
    修改为:AllowOverride All #开启apache支持伪静态,有两处都做修改
    LoadModule rewrite_module modules/mod_rewrite.so #取消前面的注释,开启apache支持伪静态


    vi /etc/profile #添加apache服务系统环境变量
    #在最后添加下面这一行

    export PATH=$PATH:/usr/local/apache2/bin

    cp /usr/local/apache2/bin/apachectl /etc/rc.d/init.d/httpd #把apache加入到系统服務
    vi /etc/init.d/httpd

    在#!/bin/sh下面添加以下两行
    #chkconfig:2345 10 90
    #descrption:Activates/Deactivates Apache Web Server

    chown daemon.daemon -R /var/www #更改目录所有者
    chmod 700 /var/www -R #更改apache网站目录权限
    chkconfig httpd on #设置开机启动
    service httpd restart
    安装php

    cd /usr/local/src
    tar -zvxf php-5.4.4.tar.gz
    cd php-5.4.4
    mkdir -p /usr/local/php5 #建立php安装目录
    ./configure --prefix=/usr/local/php5 --with-config-file-path=/usr/local/php5/etc --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-mysql-sock=/tmp/mysql.sock --with-gd --with-iconv --with-freetype --with-jpeg --with-png --with-zlib--with-libxml --enable-xml --enable-discard-path --enable-magic-quotes --enable-safe-mode --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curlwrappers --enable-mbregex --enable-fastcgi --enable-force-cgi-redirect --enable-mbstring --enable-ftp --enable-gd-native-ttf --with-openssl --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --enable-soap --without-pear --with-gettext --with-mime-magic --enable-suhosin --enable-session --with-mcrypt && make && make install #配置、编译和安装
    mkdir /usr/local/php5/etc
    cp php.ini-production /usr/local/php5/etc/php.ini #复制php配置文件到安装目录
    rm -rf /etc/php.ini #删除系统自带的配置文件
    ln -s /usr/local/php5/etc/php.ini /etc/php.ini #创建配置文件软链接
    (配置工作)

    vi /usr/local/php5/etc/php.ini #编辑

    disable_functions = passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,ini_alter,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popep,assthru,stream_socket_server,escapeshellcmd,dll,popen,disk_free_space,checkdnsrr,checkdnsrr,getservbyname,getservbyport,disk_total_space,posix_ctermid,posix_get_last_error,posix_getcwd, posix_getegid,posix_geteuid,posix_getgid,posix_getgrgid,posix_getgrnam,posix_getgroups,posix_getlogin,posix_getpgid,posix_getpgrp,posix_getpid, posix_getppid,posix_getpwnam,posix_getpwuid,posix_getrlimit, posix_getsid,posix_getuid,posix_isatty, posix_kill,posix_mkfifo,posix_setegid,posix_seteuid,posix_setgid,posix_setpgid,posix_setsid,posix_setuid,posix_strerror,posix_times,posix_ttyname,posix_uname #列出PHP可以禁用的函数,如果某些程序需要用到这个函数,可以删除,取消禁用。
    date.timezone = PRC
    expose_php = OFF #禁止显示php版本的信息
    display_errors = OFF #关闭错误提示
    配置apache支持php

    vi /usr/local/apache2/conf/httpd.conf #编辑apache配置文件
    在LoadModule php5_module modules/libphp5.so这一行下面添加:
    AddType application/x-httpd-php .php (注意:php .php这个点前面有一个空格)
    1
    service httpd restart && service mysqld restart #重启apache和mysql
    ----------------------------------------------------------------------------------------

    配置防火牆,允許防火牆通過21(FTP)、80(WEB)、3306(MYSQL)端口

    vi /etc/sysconfig/iptables

    #########################################################
    # Firewall configuration written by system-config-firewall
    # Manual customization of this file is not recommended.
    *filter
    :INPUT ACCEPT [0:0]
    :FORWARD ACCEPT [0:0]
    :OUTPUT ACCEPT [0:0]
    -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
    -A INPUT -p icmp -j ACCEPT
    -A INPUT -i lo -j ACCEPT
    -A INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT
    -A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
    -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
     -A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
    -A INPUT -j REJECT --reject-with icmp-host-prohibited
    -A FORWARD -j REJECT --reject-with icmp-host-prohibited
    COMMIT
    #########################################################

    service iptables restart //最后重启防火墙使配置生效

    Centos-6.2 各个版本的区别



     CentOS-6.2-i386-netinstall.iso
    这是一个用于网络安装和系统救援的镜像文件.
    这个镜像文件可以被刻录进 CD 中.然后将 PC 设置为从 CD 引导.

    CentOS-6.2-i386-minimal.iso
    这个镜像文件用于安装一个非常基本的 CentOS 6.2 系统,包含了一些基本所需的最小安装包.
    请将此镜像文件刻录进 CD 并设置 PC 从 CD 引导.一些预先设置的安装包将被安装进你的系统中.其他可能所需的软件请使用 yum 安装.
    关于此镜像文件的详细信息,请参阅 http://wiki.centos.org/Manuals/ReleaseNotes/CentOSMinimalCD6.2 .

    CentOS-6.2-i386-bin-DVD1.iso
    CentOS-6.2-i386-bin-DVD2.iso
    这2个 DVD 镜像文件包含了完整的发布版.
    请将 DVD1 刻录进 DVD 并将 PC 从 DVD 引导.
    基本安装不需要 DVD2 .
    安装完毕后,请运行" yum update "升级你的系统.

    CentOS-6.2-i386-LiveCD.iso
    这是1个 CentOS 6.2 的 CD Live 镜像.你可以用这个 CD 启动 PC.
    关于此镜像文件的详细信息,请参阅 http://wiki.centos.org/Manuals/ReleaseNotes/CentOSLiveCD6.2 .
    此镜像文件也可用于安装 CentOS 6.2 .

    CentOS-6.2-i386-LiveDVD.iso
    这是1个 CentOS 6.2 的 DVD Live 镜像.你可以用这个 DVD 启动 PC .
    关于此镜像文件的详细信息,请参阅 http://wiki.centos.org/Manuals/ReleaseNotes/CentOSLiveDVD6.2 .
    此镜像文件也可用于安装 CentOS 6.2 .

    为了必须的分区操作,你需要运行 GUI 安装工具.网络安装步骤也是同样.关于这些方面的信息请参阅版本注释( http://wiki.centos.org/Manuals/ReleaseNotes/CentOS6.2 )

    解决Cannot load /usr/local/apache/modules/libphp5.so的方法



    最后一步重新启动apache报如下错误:httpd: Syntax error on line 53 of /usr/local/apache/conf/httpd.conf: Cannot load /usr/local/apache/modules/libphp5.so into server: /usr/local/apache/modules/libphp5.so: cannot restore segment prot after reloc: Permission denied
    解决办法:
    原因是Linux有一个SELinux保护模式引起的。
    1关闭SELINUX的方法:
    vi /etc/selinux/config 将SELINUX=enforcing 改成SELINUX=disabled  需要重启
    2不关闭SELINUX的方法:
    # setenforce 0
    # chcon -c -v -R -u system_u -r object_r -t textrel_shlib_t /usr/local/apache/modules/libphp5.so
    # service httpd restart
    # setenforce 1

    [解决方法]MySql提示:The server quit without updating PID file(…)失败

    1.可能是/usr/local/mysql/data/rekfan.pid文件没有写的权限解决方法 :给予权限,执行 “chown -R mysql:mysql /var/data” “chmod -R 755 /usr/local/mysql/data”  然后重新启动mysqld!


    2.可能进程里已经存在mysql进程(自己遇到的是这种情况。)

    解决方法:用命令“ps -ef|grep mysqld”查看是否有mysqld进程,如果有使用“kill -9  进程号”杀死,然后重新启动mysqld!
    3.可能是第二次在机器上安装mysql,有残余数据影响了服务的启动。
    解决方法:去mysql的数据目录/data看看,如果存在mysql-bin.index,就赶快把它删除掉吧,它就是罪魁祸首了。本人就是使用第三条方法解决的 !http://blog.rekfan.com/?p=186
    4.mysql在启动时没有指定配置文件时会使用/etc/my.cnf配置文件,请打开这个文件查看在[mysqld]节下有没有指定数据目录(datadir)。
    解决方法:请在[mysqld]下设置这一行:datadir = /usr/local/mysql/data
    5.skip-federated字段问题
    解决方法:检查一下/etc/my.cnf文件中有没有没被注释掉的skip-federated字段,如果有就立即注释掉吧。
    6.错误日志目录不存在
    解决方法:使用“chown” “chmod”命令赋予mysql所有者及权限
    7.selinux惹的祸,如果是centos系统,默认会开启selinux
    解决方法:关闭它,打开/etc/selinux/config,把SELINUX=enforcing改为SELINUX=disabled后存盘退出重启机器试试。
    http://blog.rekfan.com/?p=186

    Mysql数据库安装

    由于mysql不断更新中加入了更多的特性,所以就学习来说最好选择安装5.5以上的版本,我选择安装的mysql的版本为mysql-5.6.4-m7.tar.gz,所以安装方法使用的是Cmake,与5.5以下使用configure的版本有所不同。以下是详细的安装步骤:
    1、  解压压缩文件:
    tar -zxvf mysql-5.6.4-m7.tar.gz
    2、  进入解压后的文件夹:
    cd  mysql-5.6.4-m7
    3、  认识Mysql的CMAKE配置选项:
       1>基本配置命令
    Configure命令
    CMake命令
    作用
    ./configure
    cmake .
    按默认选项进行配置
    ./configure --help
    cmake . -LH or ccmake .
    查看命令帮助
    make clean
    rm config.cache
    make clean
    rm CMakeCache.txt
    在重新配置和编译前清除旧的object文件和缓存的信息

      2>Mysql安装布局选项
    configure选项
    CMake选项
    作用
    --prefix=/usr
    -DCMAKE_INSTALL_PREFIX=/usr
    安装的主目录
    --libexecdir=/usr/sbin
    -DINSTALL_SBINDIR=sbin
    Mysqld目录
    --localstatedir=/var/lib/mysql
    -DMYSQL_DATADIR=/var/lib/mysql
    Data 目录
    --sysconfdir=/etc/mysql
    -DSYSCONFDIR=/etc/mysql
    Config目录 (my.cnf)
    --with-plugindir=/usr/lib64/mysql/plugin
    -DINSTALL_PLUGINDIR=lib64/mysql/plugin
    插件目录
    --mandir=/usr/share/man
    -DINSTALL_MANDIR=share/man
    帮助文档目录
    --sharedstatedir=/usr/share/mysql
    -DINSTALL_SHAREDIR=share
    共享数据目录
    --libdir=/usr/lib64/mysql
    -DINSTALL_LIBDIR=lib64/mysql
    库文件安装目录
    --includedir=/usr/include/mysql
    -DINSTALL_INCLUDEDIR=include/mysql
    头文件安装目录
    --infodir=/usr/share/info
    -DINSTALL_INFODIR=share/info
    Info文件目录
       
        3>Mysql存储引擎选项
            由于Mysql的存储引擎室插件形式的所以需要使用命令选项选取所要使用的引擎类型如:InnoDB, ARCHIVE, and BLACKHOLE engines:
    -DWITH_INNOBASE_STORAGE_ENGINE=1
    -DWITH_ARCHIVE_STORAGE_ENGINE=1
    -DWITH_BLACKHOLE_STORAGE_ENGINE=1

       4>其他选项
    configure选项
    CMake选项
    作用
    --with-tcp-port-=3306
    -DMYSQL_TCP_PORT=3306
    TCP/IP端口号
    --with-unix-socket-path=/tmp/mysqld.sock
    -DMYSQL_UNIX_ADDR=/tmp/mysqld.sock
    UNIX socket文件
    --enable-local-infile
    -DENABLED_LOCAL_INFILE=1
    启用支持导入数据的Local变量
    --with-extra-charsets=all
    -DEXTRA_CHARSETS=all
    额外的字符集
    --with-charset=utf8
    -DDEFAULT_CHARSET=utf8
    默认字符集
    --with-collation=utf8_general_ci
    -DDEFAULT_COLLATION=utf8_general_ci
     默认排序字符集
    --with-mysqld-user=mysql
    -DMYSQL_USER=mysql
    启动mysql者
    --without-debug
    -DWITH_DEBUG=0
    是否支持调试
    4、  添加新的用户
     sudo adduser mysql
    5、  按照需要配置Mysql安装选项
    了解了以上信息就可以根据自己的需要选择合适的命令选项进行安装了。
    cmake .
    -DCMAKE_INSTALL_PREFIX=/mysql   \
    -DMYSQL_DATADIR=/mysql/Data          \
    -DMYSQL_UNIX_ADDR=/tmp/mysql.sock   \
    -DMYSQL_USER=mysql   \
    -DWITH_MYISAM_STORAGE_ENGINE=1  \
    -DWITH_INNOBASE_STORAGE_ENGINE=1  \
    -DWITH_MEMORY_STORAGE_ENGINE=1  \
    -DENABLED_LOCAL_INFILE=1
    (注:若运行 cmake报错Curses library not found,请自行安装libncurses5-dev包,然后运行rmCMakeCache.txt清理缓存,重新运行Cmake命令)
    make
    sudo make install
    6、  安装默认的数据库
    cd   /mysql/scripts
    sudo ./mysql_install_db --basedir=/usr/local/mysql--datadir=/usr/local/mysql/data --user=mysql 
    (若出现错误提示FATALERROR: Could not find ./bin/my_print_defaults ,请注意选项为“--”而非“-)
    7、  复制mysql配置文件到系统配置路径下
    cd /usr/local/mysql/support-files
       sudo cp my-medium.cnf /etc/my.cnf
    8、  复制服务文件(使用service命令时可以用到)
    sudo cp mysql.server /etc/init.d/mysqld
    9、  切换用户为mysql并启动mysql
    su mysql
    service mysqld start
    exit
           (建议使用su mysql -c "service mysqld start")
    10、查看启动情况
    netstat -nat
    Active Internet connections (servers and established)
    Proto Recv-Q Send-Q Local Address      Foreign Address     State   
    tcp  0  0         0.0.0.0:3306           0.0.0.0:*      LISTEN  
      由于 mysql在未指定端口下得默认端口是3306,所以可见mysql已经安装成功 。
    11、设置软连接,添加mysql(基本命令),  mysqldump(备份命令),  mysqladmin(管理命令)到/usr/bins使其能在shell中直接运行
        sudo ln -s /usr/local/mysql/bin/mysql /usr/bin
        sudo ln -s /usr/local/mysql/bin/mysqldump /usr/bin
        sudo ln -s /usr/local/mysql/bin/mysqladmin /usr/bin

    至此所有的安装工作已经全部完成!

    PHPCMS v9 安装环境要求



    PHPCMS V9基于PHP+MYSQL环境运行
    操作系统linux 或者 windows
    Web ServerApache、IIS 、Nginx或其他 Web Server
    PHP版本PHP 5以上版本
    MYSQL版本MySql 4.1以上版本
    相关扩展功能
    项目状态
    MYSQL扩展必须开启
    JSON扩展必须开启
    ICONV必须开启
    GD库必须开启
    FREETYPE必须开启
    URL Rewrite可选
    GZip可选
    Mysql 全文索引可选
    您还可以通过配置Memcached、sphinx进一步提升您的系统性能

    phpcms本地安装之linux环境搭建

    一、系统约定

    软件源代码包存放位置:/usr/local/src
    源码包编译安装位置(prefix):/usr/local/software_name
    脚本以及维护程序存放位置:/usr/local/sbin
    MySQL 数据库位置:/var/lib/mysql(可按情况设置)
    Apache 网站根目录:/home/www/wwwroot(可按情况设置)
    Apache 虚拟主机日志根目录:/home/www/logs(可按情况设置)
    Apache 运行账户:www:www

    二、系统环境部署及调整

    1. 检查系统是否正常# more /var/log/messages(检查有无系统级错误信息)
    # dmesg(检查硬件设备是否有错误信息)
    # ifconfig(检查网卡设置是否正确)
    # ping www.163.com(检查网络是否正常)
    2. 关闭不需要的服务
    # ntsysv
    以下仅列出需要启动的服务,未列出的服务一律推荐关闭:
    atd
    crond
    irqbalance
    microcode_ctl
    network
    sendmail
    sshd
    syslog

    3. 重新启动系统
    # init 6
    4. 配置 vim
    # vi /root/.bashrc
    在 alias mv='mv -i' 下面添加一行:alias vi='vim' 保存退出。
    # echo 'syntax on' > /root/.vimrc
    5. 使用 yum 程序安装所需开发包(以下为标准的 RPM 包名称)
    # yum install ntp vim-enhanced gcc gcc-c++ gcc-g77 flex bison autoconf automake bzip2-devel ncurses-devel libjpeg-devel libpng-devel libtiff-devel freetype-devel pam-devel kernel
    6. 定时校正服务器时钟,定时与中国国家授时中心授时服务器同步
    # crontab -e 加入一行: */30 * * * * ntpdate 210.72.145.44
    7. 源码编译安装所需包 (Source) 
    (1) GD2
    # cd /usr/local/src
    tar xzvf gd-2.0.34.tar.gz
    # cd gd-2.0.34
    # ./configure --prefix=/usr/local/gd2
    # make
    # make install
    (2) LibXML2
    # cd /usr/local/src
    # tar xjvf libxml2-2.6.30.tar.bz2
    # cd libxml2-2.6.30
    # ./configure --prefix=/usr/local/libxml2
    # make
    # make install
    (3) LibMcrypt
    # cd /usr/local/src
    # tar xjvf libmcrypt-2.5.8.tar.bz2
    # cd libmcrypt-2.5.8
    # ./configure –prefix=/usr/local/libmcrypt
    # make
    # make install
    (4) Apache日志截断程序
    # cd /usr/local/src
    # tar xzvf cronolog-1.7.0-beta.tar.gz
    # cd cronolog-1.7.0-beta
    # ./configure –prefix=/usr/local/cronolog
    # make
    # make install
    8. 升级OpenSSL和OpenSSH
    # cd /usr/local/src
    # tar xzvf openssl-0.9.8e.tar.gz
    # cd openssl-0.9.8e
    # ./config --prefix=/usr/local/openssl
    # make
    # make test
    # make install
    # cd ..
    # tar xzvf openssh-4.7p1.tar.gz
    # cd openssh-4.7p1
    # ./configure \
    "--prefix=/usr" \
    "--with-pam" \
    "--with-zlib" \
    "--sysconfdir=/etc/ssh" \
    "--with-ssl-dir=/usr/local/openssl" \
    "--with-md5-passwords"
    # make
    # make install
    (1)禁用 SSH V1 协议
    找到:
    #Protocol 2,1
    改为:
    Protocol 2
    (2)禁止root直接登录
    此处先建立一个普通系统用户:
    # useradd username
    # passwd username
    找到:
    #PermitRootLogin yes
    改为:
    PermitRootLogin no
    (3)禁用服务器端GSSAPI
    找到以下两行,并将它们注释:
    GSSAPIAuthentication yes
    GSSAPICleanupCredentials yes
    (4)禁用 DNS 名称解析
    找到:
    #UseDNS yes
    改为:
    UseDNS no
    (5)禁用客户端 GSSAPI
    # vi /etc/ssh/ssh_config
    找到:
    GSSAPIAuthentication yes
    将这行注释掉。
    最后,确认修改正确后重新启动 SSH 服务
    # service sshd restart
    # ssh -v
    确认 OpenSSH 以及 OpenSSL 版本正确。

    三、编译安装L.A.M.P环境

    1. 下载软件# cd /usr/local/src
    httpd-2.2.6.tar.bz2
    mysql-5.0.45-linux-i686-glibc23.tar.gz
    php-5.2.4.tar.bz2
    ZendOptimizer-3.3.0-linux-glibc21-i386.tar.gz
    2. 安装MySQL
    # tar xzvf mysql-5.0.45-linux-i686-glibc23.tar.gz
    # mv mysql-5.0.45-linux-i686-glibc23 /usr/local/
    # ln -s /usr/local/ mysql-5.0.45-linux-i686-glibc23 /usr/local/mysql
    # useradd mysql
    # chown -R mysql:root /usr/local/mysql/
    # cd /usr/local/mysql
    # ./scripts/mysql_install_db --user=mysql
    # cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld
    # chown root:root /etc/rc.d/init.d/mysqld
    # chmod 755 /etc/rc.d/init.d/mysqld
    # chkconfig --add mysqld
    # chkconfig --level 3 5 mysqld on
    # cp ./support-files/my-huge.cnf /etc/my.cnf
    # mv /usr/local/mysql/data /var/lib/mysql
    # chown -R mysql:mysql /var/lib/mysql/
    # vi /etc/my.cnf
    修改以下内容:
    (1) 在 [mysql] 段增加一行:
    default-character-set = gbk | latin1 | utf8 | big5
    (2) 在 [mysqld] 段增加或修改:
    datadir = /var/lib/mysql
    --skip-innodb
    default-character-set = gbk | latin1 | utf8 | big5
    --wait-timeout = 3 | 5 | 10
    max_connections = 256 | 384 | 512
    max_connect_errors = 10000000
    thread_concurrency = CPU个数×2
    将 log-bin 注释
    # bin/mysqladmin -u root password 'password_for_root'
    3. 编译安装Apache
    # cd /usr/local/src
    # tar xjvf httpd-2.2.6.tar.bz2
    # cd httpd-2.2.6
    # ./configure \
    "--prefix=/usr/local/apache2" \
    "--with-included-apr" \
    "--enable-so" \
    "--enable-deflate=shared" \
    "--enable-expires=shared" \
    "--enable-rewrite=shared" \
    "--enable-static-support" \
    "--disable-userdir"
    # make
    # make install
    # echo '/usr/local/apache2/bin/apachectl start ' >> /etc/rc.local
    4. 编译安装PHP
    # cd /usr/local/src
    # tar xjvf php-5.2.4.tar.bz2
    # cd php-5.2.4
     ./configure     --prefix=/usr/local/php     --with-apxs2=/usr/local/apache2/bin/apxs     --with-config-file-path=/usr/local/php/etc     --with-mysql=/usr/local/mysql    --with-libxml-dir=/usr/local/libxml2     --with-gd=/usr/local/gd2     --with-jpeg-dir     --with-png-dir     --with-bz2     --with-freetype-dir    --with-iconv-dir     --with-zlib-dir    --with-openssl=/usr/local/openssl    --with-mcrypt=/usr/local/libmcrypt     --enable-soap   --enable-gd-native-ttf    --enable-ftp    --enable-mbstring     --enable-exif     --disable-ipv6   --disable-cgi     --disable-cli
     
    # make
    # make install
    # mkdir /usr/local/php/etc
    # cp php.ini-dist /usr/local/php/etc/php.ini
    5. 整合Apache与PHP
    # vi /usr/local/apache2/conf/httpd.conf
    找到:
    AddType application/x-gzip .gz .tgz
    在该行下面添加
    AddType application/x-httpd-php .php
    找到:
    <IfModule dir_module>
        DirectoryIndex index.html
    </IfModule>
    将该行改为
    <IfModule dir_module>
        DirectoryIndex index.html index.htm index.php
    </IfModule>
    找到:
    #Include conf/extra/httpd-mpm.conf
    #Include conf/extra/httpd-info.conf
    #Include conf/extra/httpd-vhosts.conf
    #Include conf/extra/httpd-default.conf
    去掉前面的“#”号,取消注释。
    注意:以上 4 个扩展配置文件中的设置请按照相关原则进行合理配置! 修改完成后保存退出。
    # /usr/local/apache2/bin/apachectl restart
    6. 查看确认L.A.M.P环境信息、提升 PHP 安全性
    在网站根目录放置 phpinfo.php 脚本,检查phpinfo中的各项信息是否正确。
    确认 PHP 能够正常工作后,在 php.ini 中进行设置提升 PHP 安全性。
    # vi /etc/php.ini
    找到:
    disable_functions =
    设置为:
    phpinfo,passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,
    proc_get_status,ini_alter,ini_alter,ini_restore,dl,pfsockopen,openlog,syslog,
    readlink,symlink,popepassthru,stream_socket_server

    四、服务器安全性设置

    1. 设置系统防火墙
    # vi /usr/local/sbin/fw.sh
    将以下脚本命令粘贴到 fw.sh 文件中。
    #!/bin/bash
    # Stop iptables service first
    service iptables stop
    # Load FTP Kernel modules
    /sbin/modprobe ip_conntrack_ftp
    /sbin/modprobe ip_nat_ftp
    # Inital chains default policy
    /sbin/iptables -F -t filter
    /sbin/iptables -P INPUT DROP
    /sbin/iptables -P OUTPUT ACCEPT
    # Enable Native Network Transfer
    /sbin/iptables -A INPUT -i lo -j ACCEPT
    # Accept Established Connections
    /sbin/iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
    # ICMP Control
    /sbin/iptables -A INPUT -p icmp -m limit --limit 1/s --limit-burst 10 -j ACCEPT
    # WWW Service
    /sbin/iptables -A INPUT -p tcp --dport 80 -j ACCEPT
    # FTP Service
    /sbin/iptables -A INPUT -p tcp --dport 21 -j ACCEPT
    # SSH Service
    /sbin/iptables -A INPUT -p tcp --dport 22 -j ACCEPT # chmod 755 /usr/local/sbin/fw.sh
    # echo '/usr/local/sbin/fw.sh' >> /etc/rc.local
    # /usr/local/sbin/fw.sh

    linux安装phpcms,dedecms等程序遇到的gd扩展问题解决方法!


    只要在终端输入:yum install php-gd     就可以了。。。

    php缺少php-gd扩展模块解决



    一、test.php
    vim test.php
    <?php
    phpinfo();
    ?>
    保存即可。测试php环境。
    --without-gd'
    二、测试本机是否有php-gd扩展模块:
    PHP code
    <?php if(extension_loaded('gd')) { echo'你可以使用gd<br>'; foreach(gd_info() as$cate=>$value) echo$cate.': '.$value.'<br>'; }elseecho'你没有安装gd扩展'; ?> 三、解决办法。安装php-gd:       yum -y install php-gd