日期:2011-12-14 13:43:00  来源:本站整理

Discuz!运行环境搭建教程:CentOS+Nginx[服务器安全]

赞助商链接



  本文“Discuz!运行环境搭建教程:CentOS+Nginx[服务器安全]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:

本文主要撰写discuz在centos系统上的运行环境搭建历程,服务器软件采取轻量级的web服务器nginx,下面是具体历程:

1、系统约定

软件源代码包存放位置 /usr/local/src
源码包编译安装位置(prefix) /usr/local/software_name
脚本以及保护程序存放位置 /usr/local/sbin
MySQL 数据库位置 /var/lib/mysql(可按情形设置)
网站根目录 /home/www/wwwroot(可按情形设置)
虚拟主机日记根目录 /home/www/logs(可按情形设置)
运行账户 www:www
2、系统环境布置及调整

1、查抄系统能否正常

# more /var/log/messages (查抄有没有系统级错误信息)
# dmesg (查抄硬件设备能否有错误信息)
# ifconfig(查抄网卡设置能否精确)
# ping www.163.com (查抄网络能否正常)
# cat /proc/cpuinfo (查抄CPU频率能否正常)
# top (按1检测CPU核数能否正常,内存大小能否正常

2、关闭不需求的服务

# ntsysv

以下仅列出需求启动的服务,未列出的服务一概举荐关闭:
atd
crond
irqbalance
microcode_ctl
network
sendmail
sshd
syslog
关闭SElinux:改正/etc/selinux/config文件中的SELINUX= 为 disabled

3、改换yum国内源

# cd /etc/yum.repos.d
# mv CentOS-Base.repo CentOS-Base.repo.save
# wget http://centos.ustc.edu.cn/CentOS-Base.repo.5
# mv CentOS-Base.repo.5 CentOS-Base.repo
# yum clean all

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

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

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

#yum update –y
#yum -y install make openssl openssl-devel pcre pcre-devel libpng libpng-devel libjpeg-6b libjpeg-devel-6b freetype freetype-devel gd gd-devel zlib zlib-devel gcc 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. 重新启动系统

# init 6

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

1、下载软件

# cd /usr/local/src
#wget http://sysoev.ru/nginx/nginx-0.7.63.tar.gz
#wget http://download.scientificlinux.net/nginx
#wget http://download.scientificlinux.net/php-fpm.conf
#wget http://download.scientificlinux.net/nginx.conf
#wget http://download.scientificlinux.net/fcgi.conf
#wget http://download.scientificlinux.net/php-5.2.10.tar.gz
#wget http://download.scientificlinux.net/php-5.2.10-fpm-0.5.13.diff.gz
#wget http://download.scientificlinux.net/ZendOptimizer-3.3.3-linux-glibc23-i386.tar.gz (32位系统)
#wget http://download.scientificlinux.net/ZendOptimizer-3.3.3-linux-glibc23-x86_64.tar.gz (64位系统)
#wget http://download.scientificlinux.net/mysql-5.1.39-linux-i686-glibc23.tar.gz (32位系统)
#wget http://download.scientificlinux.net/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/
# ln -s /usr/local/mysql-5.1.39-linux-i686-glibc23/ /usr/local/mysql
# groupadd mysql
# useradd -g mysql mysql
# chown -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
# chmod 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/mysqlskip-innodbwait-timeout = 10max_connections = 512max_connect_errors = 10000000
在 [mysqld] 段改正

max_allowed_packet = 16Mthread_cache_size = CPU个数*2
将 log-bin 注释

# service mysqld start
# bin/mysqladmin -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
# gzip -cd php-5.2.10-fpm-0.5.13.diff.gz | patch -d php-5.2.10 -p1
# cd php-5.2.10
# ./configure --prefix=/usr/local/php5 --with-config-file-path=/usr/local/etc/cgi --enable-mbstring --enable-ftp --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-zip --enable-fpm
# make
# make install
# mkdir -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
# echo 'ulimit -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,内容为:<?php phpinfo(); ?>
翻开浏览器拜候,便可看到phpinfo页面

6、设置系统防火墙

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

#!/bin/bash# Stop iptables service firstservice 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   以上是“Discuz!运行环境搭建教程:CentOS+Nginx[服务器安全]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:

  • WAMP环境下Discuz x 论坛伪静态配置
  • Ubuntu 10.04 下 Discuz论坛架设
  • Discuz!运行环境搭建教程:CentOS+Nginx
  • <b>windows下mysql自动按期备份并压缩/以discuz论坛为例</b>
  • <b>Ubuntu Server下安装Discuz7.0</b>
  • <b>虚拟机下利用Ubuntu Server搭建Discuz论坛</b>
  • Linux 系统搭建Discuz X 环境具体教程
  • <b>UCenter与Discuz编码不统一的兼容处理办法</b>
  • Discuz! X1某页面存在XSS漏洞及修复筹划
  • <b>办理Google、遨游3等i浏览器下Discuz主题管理操作失效</b>
  • Discuz论坛的安全保护与配置经验
  • discuz7密码php记录版
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .