Chinaunix首页 | 论坛 | 博客
  • 博客访问: 317206
  • 博文数量: 74
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 447
  • 用 户 组: 普通用户
  • 注册时间: 2014-06-09 09:12
个人简介

书山有路勤为径,学海无涯苦作舟

文章分类

全部博文(74)

文章存档

2015年(44)

2014年(30)

我的朋友

分类: 系统运维

2015-06-03 16:10:01

本文主要撰写discuz系统上的运行环境搭建过程,服务器软件采用轻量级的web服务器,下面是详细过程:

一、系统约定

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

二、系统环境部署及调整

1、检查系统是否正常

 /var/log/messages (检查有无系统级错误信息)
 (检查硬件设备是否有错误信息)

(检查网卡设置是否正确)
  (检查网络是否正常)
 /proc/cpuinfo (检查CPU频率是否正常)
 (按1检测CPU核数是否正常,内存大小是否正常

2、关闭不需要的服务

  • 以下仅列出需要启动的服务,未列出的服务一律推荐关闭:
  • atd
  • crond
  • irqbalance
  • microcode_ctl
  • network
  • syslog

    关闭SElinux:修改/etc/selinux/config文件中的SELINUX= 为 disabled

    3、更换国内源

     /etc/yum.repos.d
     CentOS-Base.repo CentOS-Base.repo.save
     
    # mv CentOS-Base.repo.5 CentOS-Base.repo
    # yum clean all

    4、服务器时间检查和设置

    #date (检查时间是否正确,是否是中国时间CST)
    # -f /usr/share/zoneinfo/Asia/Shanghai /etc/localtime (如果时区不对,则执行,时间正常的跳过)
    #yum -y install ntp (安装ntp对时工具)
    # ntpd on (让对时服务开机启动)

    5、使用 yum 对系统进行更新并且安装必要软件包

    #yum update –y
    #yum -y install  openssl openssl-devel pcre pcre-devel libpng libpng-devel libjpeg-6b libjpeg-devel-6b freetype freetype-devel gd gd-devel zlib zlib-devel  gcc-c++ libXpm libXpm-devel ncurses ncurses-devel libmcrypt libmcrypt-devel libxml2 libxml2-devel imake autoconf automake screen sysstat compat-libstdc++-33 curl curl-devel

    6. 重新启动系统

     6

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

    1、下载软件

    # cd /usr/local/src
    #wget .gz
    #wget
    #wget -fpm.conf
    #wget .conf

    #wget fcgi.conf
    #wget -5.2.10.tar.gz
    #wget php-5.2.10-fpm-0.5.13..gz
    #wget ZendOptimizer-3.3.3--glibc23-i386.tar.gz (32位系统)
    #wget ZendOptimizer-3.3.3-linux-glibc23-x86_64.tar.gz (64位系统)
    #wget mysql-5.1.39-linux-i686-glibc23.tar.gz (32位系统)
    #wget mysql-5.1.39-linux-x86_64-glibc23.tar.gz (64位系统)

    2、安装MySQL

    # cd /usr/local/src
    # tar zxvf mysql-5.1.39-linux-i686-glibc23.tar.gz
    # mv mysql-5.1.39-linux-i686-glibc23 /usr/local/
     -s /usr/local/mysql-5.1.39-linux-i686-glibc23/ /usr/local/mysql
     mysql
     -g mysql mysql
     -R mysql:mysql /usr/local/mysql
    # chown -R mysql:mysql /usr/local/mysql-5.1.39-linux-i686-glibc23/
    # cd /usr/local/mysql
    # ./scripts/mysql_install_db --user=mysql

    # cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld
     755 /etc/rc.d/init.d/mysqld
    # chkconfig --add mysqld
    # chkconfig --level 3 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

    编辑/etc/my.cnf,在 [mysqld] 段增加

    datadir = /var/lib/mysql
    skip-innodb -timeout = 10
    max_connections = 512
    max_connect_errors = 10000000

    在 [mysqld] 段修改

    max_allowed_packet = 16M
    thread_cache_size = CPU个数*2

    将 log-bin 注释

     mysqld start
    # bin/ -u root password 'password_for_root'

    其中引号内的password_for_root是要设置的root密码

    3、安装Nginx

    # cd /usr/local/src/
    # tar zxvf nginx-0.7.63.tar.gz
    # cd nginx-0.7.63
    # ./configure --prefix=/usr/local/nginx --conf-path=/usr/local/nginx/conf/nginx.conf --with-http_realip_module --with-http_addition_module --with-# http_gzip_static_module --with-http_random_index_module --with-http_stub_status_module --with-http_sub_module --with-http_dav_module
    # make
    # make install
    # cp /usr/local/src/nginx /etc/init.d/nginx
    # chmod 755 /etc/init.d/nginx
    # chkconfig --add nginx
    # chkconfig nginx on

    4、安装PHP和Zend

    # cd /usr/local/src
    # tar zxvf php-5.2.10.tar.gz -cd php-5.2.10-fpm-0.5.13.diff.gz |  -d php-5.2.10 -p1
    # cd php-5.2.10
    # ./configure --prefix=/usr/local/php5 --with-config--path=/usr/local/etc/cgi ---mbstring --enable- --with-gd --with-jpeg-dir=/usr --with-png-dir=/usr --enable-magic-quotes --with-mysql=/usr/local/mysql --with-pear --enable-sockets --with-ttf --with-freetype-dir=/usr --enable-gd-native-ttf --with-zlib --enable-sysvsem --enable-sysvshm --with-libxml-dir=/usr --enable-force-cgi-redirect --enable-fastcgi --with-xmlrpc --enable- --enable-fpm
    # make
    # make install
     -p /usr/local/etc/cgi/
    # cp php.ini-dist /usr/local/etc/cgi/php.ini
    # mv -f /usr/local/src/php-fpm.conf /usr/local/php5/etc/php-fpm.conf
    # groupadd www
    # useradd -g www www
     ' -SHn 65535' >> /etc/rc.local
    # echo '/usr/local/php5/sbin/php-fpm start' >> /etc/rc.local
    # cd /usr/local/src
    # tar zxvf ZendOptimizer-3.3.3-linux-glibc23-i386.tar.gz
    # cd ZendOptimizer-3.3.3-linux-glibc23-i386
    # ./install

    (注意第一个要填的路径是Zend安装路径,第二个是php.ini所在的路径,即/usr/local/etc/cgi) (不要选重启apache)

    5、启动Nginx和php

    # mv -f /usr/local/src/fcgi.conf /usr/local/nginx/conf/
    # cp -f /usr/local/src/nginx.conf /usr/local/nginx/conf/nginx.conf
    # mkdir -p /home/www/wwwroot
    # ulimit -SHn 65535
    # /usr/local/php5/sbin/php-fpm start
    # service nginx start
    在/home/www/wwwroot放入一个index.php,内容为:
    打开浏览器访问,即可看到phpinfo页面

    6、设置系统防火墙

    编辑/usr/local/sbin/fw.sh,复制以下内容进去

    #!/bin/bash
    # Stop  service first
    service iptables stop
    # Load FTP Kernel modules
    /sbin/ 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  # 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
    #  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






阅读(1377) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~