文档章节

Setup a Lnmp on Ubuntu 12.04

吴下阿吉
 吴下阿吉
发布于 2013/10/27 18:14
字数 530
阅读 138
收藏 0

1.0 Nginx

1.1 Download

download address

1.2 Get dependencies

uzip:

unzip to a location

1.3 Install

<!-- lang: shell -->
cd ~/Downloads
tar xvf nginx-1.4.3.tar.gz ~/src/nginx-1.4.3
cd ~/src/nginx-1.4.3
./configure --prefix=~/app/nginx-1.4.3 ----with-pcre=~/src/pcre-8.33 --with-zlib=~/src/zlib-1.2.8 --with-openssl=~/src/openssl-1.0.1e
make
sudo make install

1.4 Setup as a service

<!-- lang: shell -->
sudo gedit /etc/init.d/nginx
#! /bin/sh
# the right or left side of the equal sign doesn't have blank space. 
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

DESC="Nginx daemon"
NAME=nginx

NGINX_HOME=~/app/nginx-1.4.3
DAEMON=$NGINX_HOME/sbin/$NAME
CONFIGFILE=$NGINX_HOME/conf/$NAME.conf
PIDFILE=$NGINX_HOME/logs/$NAME.pid
SCRIPTNAME=/etc/init.d/$NAME

set -e
[ -x "$DAEMON" ] || exit 0

do_start() {
    $DAEMON -c $CONFIGFILE || echo -n "nginx already running"
}

do_stop() {
    kill -INT `cat $PIDFILE` || echo -n "nginx not running"
}

do_reload() {
    kill -HUP `cat $PIDFILE` || echo -n "nginx can't reload"
}

case "$1" in
    start)
        echo -n "Starting $DESC: $NAME"
        do_start
            echo "."
        ;;
    stop)
        echo -n "Stopping $DESC: $NAME"
            do_stop
                echo "."
         ;;
    reload|graceful)
         echo -n "Reloading $DESC configuration..."
             do_reload
                echo "."
          ;;
    restart)
          echo -n "Restarting $DESC: $NAME"
              do_stop
              do_start
                   echo "."
           ;;
*)
echo "Usage: $SCRIPTNAME {start|stop|reload|restart}" >&2
    exit 3
     ;;
esac
sudo update-rc.d nginx defaults

1.5 Test

<!-- lang: shell -->
sudo service nginx start
# http://localhost

2.0 MySQL

2.1 Download

download address

2.2 Install

<!-- lang: shell -->
tar -xvf ~/Download/mysql-5.6.14-linux-glibc2.5-x86_64.tar.gz ~/app/mysql-5.6.14
sudo groupadd mysql
sudo useradd -r -g mysql mysql
cd ~/app/mysql-5.6.14
sudo chown -R mysql
sudo chgrp -R mysql
sudo ./scripts/mysql_install_db --user=mysql
sudo chown -R root .
sudo chown -R mysql data
sudo ./bin/mysql_safe --user=mysql &

2.3 Setup as a service

<!-- lang: shell -->
sudo cp ./support-files/mysql.server /etc/init.d/mysql
sudo cp support-files/mysql-default.cnf /etc/my.cnf
sduo update-rc.d mysql defaults

2.4 Configuration

<!-- lang: shell -->
sublime ~/.profile
# mysql
export PATH="$PATH:$HOME/app/mysql-5.6.14/bin"

sudo ./bin/mysqladmin -u root password 'xxx'

2.5 Test

<!-- lang: shell -->
sudo service mysql start
mysql -u root -p

3.0 PHP

3.1 Download

download address

3.2 Before install

<!-- lang: shell -->
sudo apt-get install libxml2 libxml2-dev

3.3 Install

<!-- lang: shell -->
cd ~/Downloads
tar xvf php-5.5.5.tar.gz ~/src/php-5.5.5
cd ~/src/php-5.5.5
./configure --prefix=~/app/php55 --enable-fpm --with-mysql=~/app/mysql-5.6.14 --with-pdo-mysql=~/app/mysql-5.6.14
make
sudo make install

3.4 Config PHP-FPM

<!-- lang: shell -->
cd ~/app/php55/etc
cp ./php-fpm.conf.default ./php-fpm.conf
sudo gedit ./php-fpm.conf
# remove ; on line 25    
# set user = xxx group = xxx on line 148

3.5 Run PHP-FPM

<!-- lang: shell -->
cd ~/app/php55/sbin
sudo ./php-fpm
netstat -anp | grep 9000  # check output like: tcp 0 0 127.0.0.1:9000 0.0.0.0:* LISTEN

3.6 Setup as a service

<!-- lang: shell -->
cd ~/src/php-5.5.5
sudo cp ./sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
sudo update-rc.d php-fpm defaults

3.7 Config Nginx for PHP

<!-- lang: shell -->
sudo gedit ~/app/nginx-1.4.3/conf/nginx.conf
# append following content in first 'server{}'
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;
}
# save

3.8 Write and run PHP script

<!-- lang: shell -->
# confirm nginx and php-fpm are running.    
cd ~/app/nginx-1.4.3/html
gedit phpinfo.php
# <?php phpinfo(); ?>
# save
# http://localhost/phpinfo.php

© 著作权归作者所有

共有 人打赏支持
吴下阿吉
粉丝 34
博文 34
码字总数 9287
作品 0
厦门
程序员
私信 提问
lowendscript:最省资源lnmp一键包

lowendscript lnmp一键安装脚本是由外国兄弟David Pennington制作的,优点:最大化节省资源开销。相比军哥的lnmp一键安装包要简单、轻巧的多,磁盘空间占用也少。安装lowendscript lnmp一键包...

leisudeng
2014/02/11
0
0
函数 rb_split 給 502 Bad Gateway

如題, 其他Robbe函数正常, 但運行rb_split定報502 bad gateway 已查看phpinfo, Robbe 1.6運行正常, 幫幫忙給點意見 環境: ubuntu 12.04 32-bit RAM 1.7GB (RAM用不多) LNMP 1.0 (Nginx 1.2.7...

hkicenet
2014/03/13
315
9
Shell 一键安装 LNMPT

前言 为了更加快速的节约时间,我选择用shell脚本一键执行! 这个脚本是使用shell编写,为了快速在生产环境上部署lnmp / lamp /lnmpa 。 (Linux、Nginx/Tengine MySQL /MariaDB /Percona、P...

我不是九爷
2017/11/21
0
0
MySQL实现差集(Minus)和交集(Intersect)

MySQL没有实现Minus和Intersect功能,就像它也没有实现cube的功能一样。 可以用SQL实现同样的功能,就是麻烦了点。 drop table t1; drop table t2; create table t1(id int primary key,nickn...

Airship
2016/03/03
290
0
ubuntu 16.04 安装nodejs

经过几天的尝试,终于装好了: 1. nodejs官方推荐一下安装方式: NodeSource的二进制安装脚本NodeSource Using Ubuntu 试了,不行,然后terminal提示我用:apt install nodejs 2. nvm 切换用...

蜗牛奔跑
2016/12/20
36
0

没有更多内容

加载失败,请刷新页面

加载更多

如何在Chrome浏览器中启动deviceready事件(尝试调试phonegap项目)?

我正在开发PhoneGap应用程序,我希望能够在Chrome中调试它,而不是在电话上调试。但是,我在onGetReady()函数中初始化我的代码,该函数在PhoneGap触发“deviceready”事件时触发。由于Chr...

kisshua
35分钟前
5
0
支付宝客户端架构分析:自动化日志收集及分析

摘要: 《支付宝客户端架构解析》系列将从支付宝客户端的架构设计方案入手,带领大家进一步了解支付宝在客户端架构上的迭代与优化历程。 小蚂蚁说: 《支付宝客户端架构解析》系列将从支付宝...

阿里云官方博客
38分钟前
1
0
nginx中部署vue打包后的静态文件

如何在nginx中部署静态资源就不描述了, 请看我的这篇博客 将vue脚手架项目打包后的静态文件放到nginx上, 发现有个问题, 即url上有#, 怎么去掉这个#呢. 1 项目中router的mode 路由的mode要为h...

克虏伯
55分钟前
11
0
JS容易理解错误的地方

在这端代码执行的末尾,你会不会hi变量回事函数中的hi了?你会不会认为这不是按引用传递了? 对值传递和引用传递产生质疑了? 1 var hi = {};2 function sayHello(hi) { ...

器石_
57分钟前
5
0
Java开发学习--MongoDB

之前只学过sql,第一次使用非关系型数据库。以前对于关系型数据库与非关系型数据库的概念很模糊,通过这次的学习对这两者有了一个清晰的概念。 主键 在MongoDB中,主键名叫"_id",如果在生成...

微笑向暖wx
今天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部