搭建lemp平台

安装lemp:

#!/bin/bash
root=/opt/app
if [ $(id -u) != "0" ]; then
    echo "Error: You must be root to run this script, please use root to install lnmp"
    exit 1
fi
 
rpm -e php php-comman mysql mysql-server
 
yum install -y gcc gcc-c++ openssl-devel zlib-devel   libXpm-devel  libxml2 libxml2-devel curl-devel  libtool-ltdl.x86_64libtool-ltdl-devel.x86_64 openssl zlib-devel openssl-devel ncurses ncurses-devel glibc patch  libtool libtool-devel
  
groupadd mysql
useradd -s /sbin/nologin -M -g mysql mysql
  
mkdir /usr/local/mysql
mkdir /usr/local/mysql/data
wget http://wwwNaNake.org/files/v2.8/cmake-2.8.4.tar.gz 
tar -zxvpf cmake-2.8.4.tar.gz 
cd cmake-2.8.4
./configure --prefix=/usr/local/cmake2.8.4 && make && make install 
echo -e "PATH=$PATH:$HOME/bin:/usr/local/cmake2.8.4/bin:$PATH/nexport PATH" >> path.sh
bash path.sh
cd $root
tar zxf mysql-5.5.33.tar.gz 
cd mysql5.53
cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DSYSCONFDIR=/usr/local/mysql/etc -DMYSQL_TCP_PORT=3306 -DMYSQL_UNIX_ADDR=/tmp/mysqld.sock -DMYSQL_USER=mysql -DEXTRA_CHARSETS=all -DWITH_READLINE=1 -DWITH_SSL=system -DWITH_EMBEDDED_SERVER=1 -DENABLED_LOCAL_INFILE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1
 
 cp support-files/my-medium.cnf /etc/my.cnf
sed -i ‘s:#innodb:innodb:g‘ /etc/my.cnf
sed -i ‘s:/usr/local/mysql/data:/usr/local/mysql/var:g‘ /etc/my.cnf cp support-files/mysql.server /etc/init.d/mysqld
/usr/local/mysql/bin/./scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql datadir=/usr/local/mysql/var
chown -R root:mysql /usr/local/mysql/
chown -R mysql /usr/local/mysql/var
 ln -s /usr/local/mysql/bin/* /usr/local/bin
 ln -s /usr/local/mysql/include/* /usr/include/
cp/usr/local/mysql/lib/* /usr/lib
cp support-files/mysql.server /etc/init.d/mysql
chkconfig --add mysqld
chmod a+x /etc/init.d/mysqld
 
tar xf mhash-0.9.9.9.tar.gz 
d mhash-0.9.9.9
./configure && make && make install 
 cd $root
tar xf libmcrypt-2.5.7.tar.gz 
cd libmcrypt-2.5.7
./configure && make && make install
 ./configure --prefix=/usr/local/libmcrypt && make && make install
/sbin/ldconfig
cd libltdl/
./configure --enable-ltdl-install
make && make install
 cd $root
tar zxf zlib-1.2.8.tar.gz 
cd zlib-1.2.8
./configure && make && make install
./configure --prefix=/usr/local/zlib && make && make install
cd $root 
tar zxf libxml2-2.7.2.tar.gz
 cd libxml2-2.7.2
./configure  --with-zlib=/usr/local/zlib && make && make install
cd $root 
tar xf libpng-1.5.19.tar.gz 
cd libpng-1.5.19
 ./configure --prefix=/usr/local/libpng && make && make install
cd $root
 tar xf freetype-2.4.9.tar.gz 
cd freetype-2.4.9
./configure --prefix=/usr/local/freetype && make && make install
Cd $root
./configure --prefix=/usr/local/gd --with-jpeg=/usr/local/jpeg/ --with-png=/usr/local/libpng/ --with-freetype=/usr/local/freetype/ && make && make install
Cd $root
tar xf php-5.3.6.tar.gz
cd php-5.3.6
./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-mysql=/usr/local/mysql/ --with-libxml-dir=/usr/local/libxml2/ --with-png-dir=/usr/local/libpng/ --with-jpeg-dir=/usr/local/jpeg/ --with-freetype-dir=/usr/local/freetype/ --with-gd=/usr/local/gd/ --with-zlib-dir=/usr/local/zlib/ --with-mcrypt=/usr/local/libmcrypt/ --with-mysqli=/usr/local/mysql/bin/mysql_config --enable-soap --enable-mbstring=all --enable-sockets -enable-soap --enable-mbstring=all  --enable-sockets --enable-fpm
make && makeinstall
cp php.ini-development /usr/local/php/etc/php.ini
 
cd $root
tar xf pcre-8.34.tar.gz 
cd pcre-8.34
./configure && make && make install 
cd $root
cd nginx-1.4.7
tar xf nginx-1.4.7.tar.gz
cd nginx-1.4.7
./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_gzip_static_module
make && make install
ln-s/usr/local/lib/libpcre.so.1 /lib64/
 
cp php.ini.develepment /usr/local/php/etc/php.ini  
cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
sed -i ‘s:;pid = run/php-fpm.pid:pid=run/php-fpm.pid:‘ /usr/local/php/etc/php-fpm.conf
sed -i ‘s:;pm.start_servers = 20:pm.start_servers=20:‘ /usr/local/php/etc/php-fpm.conf
sed -i ‘s:;pm.min_spare_servers = 5:pm.min_spare_servers = 5:‘ /usr/local/php/etc/php-fpm.conf
sed -i ‘s:;pm.max_spare_servers = 35:pm.max_spare_servers = 35:‘  /usr/local/php/etc/php-fpm.conf

NGINX控制脚本:

[[email protected] ~]# vim /etc/init.d/nginx
#!/bin/sh
#
# nginx - this script starts and stops the nginx daemon
#
# chkconfig:   - 85 15 
# description:  Nginx is an HTTP(S) server, HTTP(S) reverse #               proxy and IMAP/POP3 proxy server
# processname: nginx
# config:      /etc/nginx/nginx.conf
# config:      /etc/sysconfig/nginx
# pidfile:     /usr/local/nginx/local/nginx.pid
 
# Source function library.
. /etc/rc.d/init.d/functions
 
# Source networking configuration.
. /etc/sysconfig/network
 
# Check that networking is up.
[ "$NETWORKING" = "no" ] && exit 0
 
nginx="/usr/local/nginx/sbin/nginx"
prog=$(basename $nginx)
 
NGINX_CONF_FILE="/usr/local/nginx/conf/nginx.conf"
 
#[ -f /etc/sysconfig/nginx ] && . /etc/sysconfig/nginx
 
lockfile=/var/lock/subsys/nginx
 
make_dirs() {
   # make required directories
   user=`nginx -V 2>&1 | grep "configure arguments:" | sed ‘s/[^*]*--user=\([^ ]*\).*/\1/g‘ -`
   options=`$nginx -V 2>&1 | grep ‘configure arguments:‘`
   for opt in $options; do
       if [ `echo $opt | grep ‘.*-temp-path‘` ]; then
           value=`echo $opt | cut -d "=" -f 2`
           if [ ! -d "$value" ]; then
               # echo "creating" $value
               mkdir -p $value && chown -R $user $value
           fi
       fi
   done
}
 
start() {
    [ -x $nginx ] || exit 5
    [ -f $NGINX_CONF_FILE ] || exit 6
    make_dirs
    echo -n $"Starting $prog: "
    daemon $nginx -c $NGINX_CONF_FILE
    retval=$?
    echo
    [ $retval -eq 0 ] && touch $lockfile
  return $retval
}
 
stop() {
    echo -n $"Stopping $prog: "
    killproc $prog -QUIT
    retval=$?
    echo
    [ $retval -eq 0 ] && rm -f $lockfile
    return $retval
}
 
restart() {
    configtest || return $?
    stop
    sleep 1
    start
}
 
reload() {
    configtest || return $?
    echo -n $"Reloading $prog: "
    killproc $nginx -HUP
    RETVAL=$?
    echo
}
 
force_reload() {
    restart
}
 
configtest() {
  $nginx -t -c $NGINX_CONF_FILE
}
 
rh_status() {
    status $prog
}
 
rh_status_q() {
    rh_status >/dev/null 2>&1
}
 
case "$1" in
    start)
        rh_status_q && exit 0
        $1
        ;;
    stop)
        rh_status_q || exit 0
        $1
        ;;
    restart|configtest)
        $1
        ;;
    reload)
        rh_status_q || exit 7
        $1
        ;;
    force-reload)
        force_reload
        ;;
    status)
        rh_status
        ;;
    condrestart|try-restart)
        rh_status_q || exit 0
            ;;
    *)
        echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload|configtest}"
        exit 2
esac
[[email protected] ~]# chkconfig --add nginx
[[email protected] ~]# chmod a+x /etc/init.d/nginx

NGINX主要配置:

user  nobody;
worker_processes  1;
error_log  logs/error.log;
pid        logs/nginx.pid;
 
events {
    worker_connections  10240;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
 
    log_format  main  ‘$remote_addr - $remote_user [$time_local] "$request" ‘
                      ‘$status $body_bytes_sent "$http_referer" ‘
                      ‘"$http_user_agent" "$http_x_forwarded_for"‘;
 
    access_log  logs/access.log ;
    sendfile        on;
    tcp_nopush     on;
    keepalive_timeout  30;
    gzip  on;
 
    server {
        listen       80;
        server_name  localhost;
 
        #charset koi8-r;
 
        #access_log  logs/host.access.log  main;
 
        location / {
            root   html;
            index  index.html index.php index.htm;
        }
 
        #error_page  404              /404.html;
 
        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
 
        location ~ \.php$ {
            root           html;
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
            include        fastcgi_params;
        }
 
        
    }
}

[[email protected] ~]# cat >/usr/local/nginx/html/index.php<<end

<?phpinfo();?>

end

访问动态网页:

时间: 2024-07-28 14:48:08

搭建lemp平台的相关文章

CentOS 5.8 linux下搭建LEMP平台

L:linux E:nginx M:mysql P:php 步骤一.配置好网络环境并且安装依赖包 pcre-devel zlib-devel 这是两个依赖包    (用以安装niginx的依赖包) 步骤二.创建一个专有帐号niginx 默认是用nobody的身份运行的 useradd -M -s /sbin/nologin nginx 三.解压niginx 配置 编译 安装 解压: 配置编译安装:]# ./configure --prefix=/usr/local/nginx --user=ng

centos5.9使用RPM包搭建lamp平台

1.环境介绍 os:oracle centos 5.9 apache:httpd-2.2.3-74.0.1.el5 php:php53-5.3.3-13.el5_8 mysql:mysql-server-5.0.95-3.el5 2.安装过程 # yum install -y httpd # service httpd start # yum install -y mysql-server # service mysqld start # yum install -y php53 # yum -

还在做代理?不如自己搭建微信平台

我国电子商务面临的问题,淘宝退出百度无疑是一个遗憾.当在网上购物时,用户面临的一个很大的问题就是如何在众多的网站找到自己想要的物品,并以最低的价格买到.自从淘宝退出百度,建立自己的搜索引擎后,广大消费者再也不能再百度里面直接搜索有关淘宝的商品了,这无疑是一个遗憾. 现在又出现了微商城,还没有被太多人所熟知,但是微信营销已经以非常快的速度在吞噬这整个市场,微商城.商家入驻,微门店,微餐饮,微酒店,微教育,微物业,微医疗,微信墙,微花店,微美容,微生活等很多功能,微酷WeiKuCMS网站是多功能微信

分离php和MySQL搭建LAMP平台

分离php和MySQL搭建LAMP平台 环境: 系统:CentOS-7-x86_64-Minimal-1611 Apache:httpd-2.4.25.tar MySQL:mysql-5.7.16.tar php:php-5.6.30.tar 192.168.57.144:安装MySQL 192.168.57.143:安装Apache+php http://blog.sina.com.cn/s/blog_b6e37c3f0101oo81.html 创建相关目录 创建用户 解压安装包 编译安装 (

mac下通过docker搭建LEMP环境

在mac下通过docker搭建LEMP环境境 1.安装virtualbox.由于docker是在lxc环境的容器 2.安装boot2docker,用于与docker客户端通讯 > brew update > brew install docker > brew install boot2docker 3.初始化boot2docker,也就是在virtualbox上安装一个docker的host环境 boot2docker init 此时会下载一个镜像 4.启动虚拟机host :~$ bo

cocos2dx环境搭建(android平台)

http://blog.csdn.net/iamlazybone/article/details/16367965 cocos2dx环境搭建(android平台),布布扣,bubuko.com

spring mvc+ELK从头开始搭建日志平台

spring mvc+ELK从头开始搭建日志平台 最近由于之前协助前公司做了点力所能及的事情,居然收到了一份贵重的端午礼物,是给我女儿的一个乐高积木,整个有7大包物件,我花了接近一天的时间一砖一瓦的组织起来,虽然很辛苦但是能够从过程中体验到乐趣.这次将分享从头搭建分布式日志系统,主要是在spring mvc上结合ELK套件实现(之前有些工作由于分工不同由不同的同事来完成,我只是在已经配置好的环境下做开发而已),包含如下这些技术点: spring mvc logback logstash elas

MAC中在eclipse luna上搭建移动平台自己主动化測试框架(UIAutomator/Appium/Robotium/MonkeyRunner)关键点记录

这几天由于原来在用的hp laptop的电池坏掉了,机器一不小心就断电.所以仅仅能花时间在自己的mackbook pro上又一次搭建整套环境.大家都知道搭建好开发环境是个非常琐碎须要耐心的事情,特别是当你搭建的安卓平台的时候常常须要FQ,那个慢不是常人能够忍受的.所以过程中建议大家边看书或者玩手机边搭建,省得一直瞪着屏幕导致爆血管的意外发生. 这里本人尝试把在mac上搭建移动平台自己主动化測试框架的一些碰到的问题和关键点给描写叙述一下.以方便后来者能够借鉴. 1. 假设你须要的是最新的eclis

Ubuntu搭建trac平台步骤

Ubuntu搭建trac平台步骤: # apt-get install apache2 # apt-get install libapache2-mod-python # apt-get install libapache2-mod-authnz-external # a2enmod authnz_ldap # apt-get install mysql-server-5.5  (设置root密码,如:123456) # apt-get install python-mysqldb # apt-