Chinaunix首页 | 论坛 | 博客
  • 博客访问: 114426
  • 博文数量: 19
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 453
  • 用 户 组: 普通用户
  • 注册时间: 2014-01-03 15:53
个人简介

好好学习 天天向上!

文章分类

全部博文(19)

文章存档

2014年(19)

我的朋友

分类: LINUX

2014-01-03 16:26:38

    咯咯咯....     以下内容均已测试    废话不割   直接......     

步骤一:

[root@centos ~]# uname -a

Linux centos 2.6.32-358.23.2.el6.i686 #1 SMP Wed Oct 16 17:21:31 UTC 2013 i686 i686 i386 GNU/Linux

 

[root@centos ~]# cat /etc/*release

CentOS release 6.4 (Final)

CentOS release 6.4 (Final)

CentOS release 6.4 (Final)

 


  vi /etc/sysconfig/iptables

 

/etc/init.d/iptables restart #最后重启防火墙使配置生效


 

步骤二:安装编译工具及库文件(使用CentOS yum命令安装)

yum install make apr* autoconf automake curl curl-devel 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

 

 

步骤三:下载软件包

  1、下载nginx(Nginx(发音同 engine x)是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器)

  

  2、下载pcre (支持nginx伪静态)

  ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.30.tar.gz

  3、下载MySQL

  

  4、下载php

  

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

  

 

步骤四:配置

1.编译安装cmake

tar zxvf cmake- 2.8.7.tar.gz

cd cmake- 2.8.7

./boostarp

gmake

make install

cmake –version

2.编译安装pcre

  cd /usr/local/src

  mkdir /usr/local/pcre   #创建安装目录

  tar zxvf pcre-8.33.tar.gz

  cd pcre-8.33

  ./configure --prefix=/usr/local/pcre   #配置

  make

  make install

 

步骤五:安装配置mysql

 

# 创建用户和组

groupadd mysql

useradd -g mysql  -s /usr/sbin/nologin  mysql

 

# 创建安装目录

mkdir  /usr/local/ mysql

 

# 创建数据库目录

mkdir  /usr/local/mysql/data

 

# 解压

tar -zxvf mysql-5.5.33.tar.gz

cd mysql-5.5.33

 

# 编译及安装mysql

# cmake编译:

cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/

mysql/data -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_unicode_ci -DWITH_REA

DLINE=1 -DWITH_SSL=system  -DWITH_EMBEDDED_SERVER=1 -DENABLED_LOCAL_INFILE=1 -DD

EFAULT_COLLATION=utf8_general_ci -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_

STORAGE_ENGINE=1 -DWITH_DEBUG=0

 

# 安装mysql

make && make install

 

# 复制配置文件

cp support-files/my-medium.cnf  /etc/my.cnf

 

# 设置权限

chmod +x /usr/local/mysql

chown -R mysql.mysql /usr/local/mysql

chown -R mysql:mysql /usr/local/mysql/data

 

# 配置开机自启动

cp support-files/mysql.server /etc/init.d/mysqld

chmod +x /etc/init.d/mysqld

chkconfig –add mysqld

chkconfg mysqld on

 

# 修改my.cnf配置

vim /etc/my.cnf

# [mysqld] 添加:

datadir=/usr/local/mysql/data

default-storage-engine=MyISAM

 

# 修改/etc/init.d/mysqld文件



# 初始化数据库

/usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data &

 

# 启动MySQL

/usr/local/mysql/bin/mysqld_safe –defaults-file=/etc/my.cnf &

或者:

/etc/init.d/mysql start service mysql start

  

# 测试MySQL是否启动

# 1)查看是否有进程mysql

ps -ef | grep mysql

# 2)查看端口是否运行

netstat -tnl | grep 3306

# 3)读取mysql版本信息

/usr/local/mysql/bin/mysqladmin version

4)设置mysql数据库root管理员的密码

/usr/local/mysql/bin/mysqladmin -u root -p password

 

5)登陆mysql数据库

mysql -uroot -p

如果出现无法登陆,则执行

ln -s /usr/local/mysql/bin/mysql /usr/bin/即可

原因是/usr/bin/下面没有mysql执行库

 

 

至此,MYSQL安装完毕

 

如果想远程登录mysql 登录mysql数据库  可执行

 

GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.10.147' IDENTIFIED BY 'aptech' WITH GRANT OPTION;

 

 #################################

 

步骤六、安装 nginx

  groupadd www    #添加www

  useradd -g www -s /bin/nologin www   #创建nginx运行账户www并加入到www组,不允许www用户直接登录系统cd /usr/local/src

  tar zxvf nginx-1.5.7.tar.gz

  cd nginx-1.5.7

./configure --prefix=/usr/local/nginx --user=www --group=www --with-http_stub_status_module --with-openssl=/usr/ --with-pcre=/usr/src/pcre-8.33

注意:--with-pcre=/usr/local/src/pcre-8.30指向的是源码包解压的路径,而不是安装的路径,否则会报错

  make

  make install

  /usr/local/nginx/sbin/nginx #启动nginx

  设置nginx开启启动

  vi /etc/rc.d/init.d/nginx #编辑启动文件添加下面内容

  #################################################################

#!/bin/bash

# nginx Startup script for the Nginx HTTP Server

# it is v.0.0.2 version.

# chkconfig: - 85 15

# description: Nginx is a high-performance web and proxy server.

# It has a lot of features, but it's not for everyone.

# processname: nginx

# pidfile: /var/run/nginx.pid

# config: /usr/local/nginx/conf/nginx.conf

nginxd=/usr/local/nginx/sbin/nginx

nginx_config=/usr/local/nginx/conf/nginx.conf

nginx_pid=/usr/local/nginx/logs/nginx.pid

RETVAL=0

prog="nginx"

# Source function library.

. /etc/rc.d/init.d/functions

# Source networking configuration.

. /etc/sysconfig/network

# Check that networking is up.

[ ${NETWORKING} = "no" ] && exit 0

[ -x $nginxd ] || exit 0

# Start nginx daemons functions.

start() {

if [ -e $nginx_pid ];then

echo "nginx already running...."

exit 1

fi

echo -n $"Starting $prog: "

daemon $nginxd -c ${nginx_config}

RETVAL=$?

echo

[ $RETVAL = 0 ] && touch /var/lock/subsys/nginx

return $RETVAL

}

# Stop nginx daemons functions.

stop() {

echo -n $"Stopping $prog: "

killproc $nginxd

RETVAL=$?

echo

[ $RETVAL = 0 ] && rm -f /var/lock/subsys/nginx /usr/local/nginx/logs/nginx.pid

}

reload() {

echo -n $"Reloading $prog: "

#kill -HUP `cat ${nginx_pid}`

killproc $nginxd -HUP

RETVAL=$?

echo

}

# See how we were called.

case "$1" in

start)

start

;;

stop)

stop

;;

reload)

reload

;;

restart)

stop

start

;;

status)

status $prog

RETVAL=$?

;;

*)

echo $"Usage: $prog {start|stop|restart|reload|status|help}"

exit 1

esac

exit $RETVAL

#######################################################

  :wq!保存退出

  chmod 775 /etc/rc.d/init.d/nginx #赋予文件执行权限

  chkconfig nginx on #设置开机启动

  /etc/rc.d/init.d/nginx restart

service nginx restart

 

测试  在浏览器中输入服务器的IP地址

 

 

 

步骤七:安装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-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-mysql-sock=/tmp/mysql.sock --with-gd --with-iconv --with-zlib --enable-xml --enable-magic-quotes --enable-safe-mode --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curlwrappers --enable-mbregex --enable-fpm --enable-mbstring --enable-ftp --enable-gd-native-ttf --with-openssl --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --enable-soap --without-pear --with-gettext --enable-session --with-mcrypt --with-curl   #配置

  Make   #编译

  make install    #安装

  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    #添加软链接

  cp /usr/local/php5/etc/php-fpm.conf.default /usr/local/php5/etc/php-fpm.conf   #拷贝模板文件为php-fpm配置文件

vi /usr/local/php5/etc/php-fpm.conf   #编辑 

user = www #设置php-fpm运行账号为www

  group = www #设置php-fpm运行组为www

  pid = run/php-fpm.pid #取消前面的分号

  设置 php-fpm开机启动

  cp /usr/local/src/php-5.3.10/sapi/fpm/init.d.php-fpm /etc/rc.d/init.d/php-fpm #拷贝php-fpm到启动目录

  chmod +x /etc/rc.d/init.d/php-fpm #添加执行权限

  chkconfig php-fpm on #设置开机启动

  vi /usr/local/php5/etc/php.ini #编辑配置文件

  找到:;open_basedir =   (308)

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

  找到:disable_functions =   314行)

  修改为: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 =     919行)

  修改为:date.timezone = PRC #设置时区

  找到:expose_php = On

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

  找到:display_errors = On

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

 

 

配置nginx支持php

  vi /usr/local/nginx/conf/nginx.conf

  修改/usr/local/nginx/conf/nginx.conf 配置文件,需做如下修改

  user www www; #首行user去掉注释,修改Nginx运行组为www www;必须与/usr/local/php5/etc/php-fpm.conf中的user,group配置相同,否则php运行出错

  index index.php index.html index.htm; #添加index.php

  # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000

  #

  location ~ .php$ {

  root html;

  fastcgi_pass 127.0.0.1:9000;

  fastcgi_index index.php;

  fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

  include fastcgi_params;

  }

  #取消FastCGI server部分location的注释,并要注意fastcgi_param行的参数,改为$document_root$fastcgi_script_name,或者使用绝对路径

  /etc/init.d/nginx restart #重启nginx

 

 

步骤八:配置php支持Zend Guard

  安装Zend Guard

  cd /usr/local/src

  mkdir /usr/local/zend #建立Zend安装目录

  tar xvfz ZendGuardLoader-php-5.3-linux-glibc23-i386.tar.gz #解压安装文件

  cp ZendGuardLoader-php-5.3-linux-glibc23-i386/php-5.3.x/ZendGuardLoader.so /usr/local/zend/ #拷贝文件到安装目录

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

  在最后位置添加以下内容

  [Zend Guard]

  zend_extension=/usr/local/zend/ZendGuardLoader.so

  zend_loader.enable=1

  zend_loader.disable_licensing=0

  zend_loader.obfuscation_level_support=3

  zend_loader.license_path=

  测试篇

  cd /usr/local/nginx/html/ #进入nginx默认网站根目录

  rm -rf /usr/local/nginx/html/* #删除默认测试页

  vi xxoo.php #新建index.php文件

     

  phpinfo();

  ?>

  :wq! #保存

  chown /usr/local/nginx/html/ -R #设置目录所有者

  chmod 700 /usr/local/nginx/html/ -R #设置目录权限

  shutdown -r now #重启

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

 


至此 LNMP环境搭建OK     未完待续.......
           


阅读(1404) | 评论(1) | 转发(0) |
0

上一篇:没有了

下一篇:Linux双网卡共享上网

给主人留下些什么吧!~~

啦哆A梦2014-01-06 09:55:07

不错 学习了