当前位置: 首页 > 编程日记 > 正文

Ubuntu14.04 64bit 编译安装nginx1.7+php5.4+mysql5.6

我的操作系统是Ubuntu14.04,其它linux系统的操作流程类似。

主要安装的软件是nginx1.7+php5.4+mysql5.6

1. 创建必要目录

sudo mkdir ~/setup
sudo mkdir /opt/software
sudo chmod 777 /opt/software

2. 下载必要软件

复制代码
cd ~/Downloadswget http://am1.php.net/distributions/php-5.4.29.tar.gz
tar zxvf ~/Downloads/php-5.4.29.tar.gz -C ~/setup/wget http://nginx.org/download/nginx-1.7.1.tar.gz
tar zxvf ~/Downloads/nginx-1.7.1.tar.gz -C ~/setup/wget http://cdn.mysql.com/Downloads/MySQL-5.6/mysql-5.6.19-linux-glibc2.5-x86_64.tar.gz
tar zxvf ~/Downloads/mysql-5.6.19-linux-glibc2.5-x86_64.tar.gz -C ~/setup/wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.33.tar.gz
tar zxvf ~/Downloads/pcre-8.33.tar.gz -C ~/setup/wget http://www.ijg.org/files/jpegsrc.v9.tar.gz
tar zxvf ~/Downloads/jpegsrc.v9.tar.gz -C ~/setup/wget http://prdownloads.sourceforge.net/libpng/libpng-1.6.2.tar.gz ~/Downloads
tar zxvf ~/Downloads/libpng-1.6.2.tar.gz -C ~/setup/wget http://download.savannah.gnu.org/releases/freetype/freetype-2.4.12.tar.gz
tar zxvf ~/Downloads/freetype-2.4.12.tar.gz -C ~/setup/wget http://downloads.sourceforge.net/mhash/mhash-0.9.9.9.tar.gz
tar zxvf ~/Downloads/mhash-0.9.9.9.tar.gz -C ~/setup/wget http://downloads.sourceforge.net/mcrypt/libmcrypt-2.5.8.tar.gz
tar zxvf ~/Downloads/libmcrypt-2.5.8.tar.gz -C ~/setup/wget http://downloads.sourceforge.net/mcrypt/mcrypt-2.6.8.tar.gz
tar zxvf ~/Downloads/mcrypt-2.6.8.tar.gz -C ~/setup/wget ftp://ftp.gnu.org/gnu/termcap/termcap-1.3.1.tar.gz
tar zxvf ~/Downloads/termcap-1.3.1.tar.gz -C ~/setup/wget http://ftp.gnu.org/gnu/autoconf/autoconf-latest.tar.gz
tar zxvf ~/Downloads/autoconf-latest.tar.gz -C ~/setup/wget http://ftp.gnu.org/gnu/m4/m4-latest.tar.gz
tar zxvf ~/Downloads/m4-latest.tar.gz -C ~/setup/wget http://pecl.php.net/get/memcache-2.2.7.tgz
tar zxvf ~/Downloads/memcache-2.2.7.tgz -C ~/setup/
复制代码

以上软件我已经打包好放到百度网盘,相关链接:http://pan.baidu.com/s/1o6DL4EI

3. 安装nginx

复制代码
sudo apt-get install libpcre3 libpcre3-dev
sudo apt-get install libssl-dev openssl libcurl4-openssl-dev
sudo apt-get install build-essentialsudo /usr/sbin/groupadd www
sudo /usr/sbin/useradd -g www wwwcd ~/setup/pcre-8.33/
./configure --prefix=/opt/software/pcre
sudo make && sudo make installcd ../nginx-1.7.1/
./configure --user=www --group=www --prefix=/opt/software/nginx --with-http_stub_status_module --with-http_ssl_module --with-pcre=~/setup/pcre-8.33 --with-http_realip_module
sudo make && sudo make install
复制代码

4. 安装MySQL

复制代码
cd ~/setup
sudo mv mysql-5.6.19-linux-glibc2.5-x86_64 /opt/software/mysql
sudo mkdir -p /opt/software/mysql/datasudo apt-get install libaio-devsudo /usr/sbin/groupadd mysql
sudo /usr/sbin/useradd -g mysql mysql/opt/software/mysql/scripts/mysql_install_db --basedir=/opt/software/mysql --datadir=/opt/software/mysql/data --user=mysql
sed -i "s#/usr/local/mysql#/opt/software/mysql#g" /opt/software/mysql/bin/mysqld_safe#启动mysql进程
/opt/software/mysql/bin/mysqld --basedir=/opt/software/mysql --datadir=/opt/software/mysql/data > /dev/null 2>&1
#设置root的密码为123456
/opt/software/mysql/bin/mysqladmin -u root password '123456'
复制代码

5. 安装PHP依赖库

复制代码
cd ~/setup
sudo mkdir -p /opt/software/libs/cd jpeg-9/
./configure --prefix=/opt/software/libs --enable-shared --enable-static --prefix=/opt/software/libs
sudo make && sudo make installcd ../libpng-1.6.2/
./configure --prefix=/opt/software/libs
sudo make && sudo make installcd ../freetype-2.4.12/
./configure --prefix=/opt/software/libs
sudo make && sudo make installcd ../libmcrypt-2.5.8/
./configure --prefix=/opt/software/libs
sudo make && sudo make install#注意这里不是返回上级目录,而是在当前目录
cd libltdl/
./configure --prefix=/opt/software/libs --enable-ltdl-install
sudo make && sudo make installcd ../../mhash-0.9.9.9/
./configure --prefix=/opt/software/libs
sudo make && sudo make install
复制代码

6. 设置类库加载路径

复制代码
sudo vim /etc/ld.so.conf.d/opt-software-libs.conf
输入
/opt/software/libs/lib
然后
sudo ldconfigcd ../mcrypt-2.6.8/
export LDFLAGS="-L/opt/software/libs/lib -L/usr/lib"
export CFLAGS="-I/opt/software/libs/include -I/usr/include"
touch malloc.h
./configure --prefix=/opt/software/libs --with-libmcrypt-prefix=/opt/software/libs
sudo make && sudo make installcd ../termcap-1.3.1/
./configure --prefix=/opt/software/libs
sudo make && sudo make install
复制代码

7. 安装PHP

复制代码
sudo apt-get install libxml2-dev
export LIBS="-lm -ltermcap -lresolv"
export DYLD_LIBRARY_PATH="/opt/software/mysql/lib/:/lib/:/usr/lib/:/usr/local/lib:/lib64/:/usr/lib64/:/usr/local/lib64"
export LD_LIBRARY_PATH="/opt/software/mysql/lib/:/lib/:/usr/lib/:/usr/local/lib:/lib64/:/usr/lib64/:/usr/local/lib64"cd ../php-5.4.29/
./configure --prefix=/opt/software/php --with-config-file-path=/opt/software/php/etc --with-mysql=/opt/software/mysql --with-mysqli=/opt/software/mysql/bin/mysql_config --with-iconv-dir --with-freetype-dir=/opt/software/libs --with-jpeg-dir=/opt/software/libs --with-png-dir=/opt/software/libs --with-zlib --with-libxml-dir=/usr --enable-xml --disable-rpath --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl --enable-mbregex --enable-fpm --enable-mbstring --with-mcrypt=/opt/software/libs --with-gd --enable-gd-native-ttf --with-openssl --with-mhash --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --enable-soapsudo ln -s /opt/software/mysql/lib/libmysqlclient.so.18 /usr/lib/wget http://pear.php.net/go-pear.phar
sudo mv go-pear.phar /opt/software/php/binsudo make && sudo make installsudo cp php.ini-development /opt/software/php/etc/php.ini
sudo ln -s /opt/software/mysql/lib/libmysqlclient.18.dylib /usr/lib/libmysqlclient.18.dylib
sudo cp /opt/software/php/etc/php-fpm.conf.default /opt/software/php/etc/php-fpm.conf
复制代码

8. 安装PHP扩展

复制代码
cd ../m4-1.4.17/
./configure --prefix=/opt/software/libs
sudo make && sudo make install
export PATH=/home/davidhhuan/setup/m4-1.4.17:$PATHcd ../autoconf-2.69/
./configure --prefix=/opt/software/libs
sudo make && sudo make installcd ../memcache-2.2.7/
export PHP_AUTOCONF="/opt/software/libs/bin/autoconf"
export PHP_AUTOHEADER="/opt/software/libs/bin/autoheader"
/opt/software/php/bin/phpize
./configure --with-php-config=/opt/software/php/bin/php-config
sudo make && sudo make install
复制代码

9. 设置开机自启动

Nginx

sudo vim /etc/init.d/nginx

内容如下

复制代码
#! /bin/sh### BEGIN INIT INFO
# Provides:          nginx
# Required-Start:    $local_fs $remote_fs $network $syslog
# Required-Stop:     $local_fs $remote_fs $network $syslog
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: starts the nginx web server
# Description:       starts nginx using start-stop-daemon
### END INIT INFOPATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DAEMON=/opt/software/nginx/sbin/nginx
NAME=nginx
DESC=nginxDAEMON_OPTS=''test -x $DAEMON || exit 0# Include nginx defaults if available
#if [ -f /etc/default/nginx ] ; then
#       . /etc/default/nginx
#fiset -e. /lib/lsb/init-functions#test_nginx_config() {
#  if $DAEMON -t $DAEMON_OPTS
#  then
#    return 0
#  else
#    return $?
#  fi
#}case "$1" instart)echo -n "Starting $DESC: "start-stop-daemon --start --quiet --pidfile /var/run/$NAME.pid \--exec $DAEMON || trueecho "$NAME.";;stop)echo -n "Stopping $DESC: "start-stop-daemon --stop --quiet --pidfile /var/run/$NAME.pid \--exec $DAEMON || trueecho "$NAME.";;restart|force-reload)echo -n "Restarting $DESC: "start-stop-daemon --stop --quiet --pidfile \/var/run/$NAME.pid --exec $DAEMON || truesleep 1start-stop-daemon --start --quiet --pidfile \/var/run/$NAME.pid --exec $DAEMON || trueecho "$NAME.";;reload)echo -n "Reloading $DESC configuration: "start-stop-daemon --stop --signal HUP --quiet --pidfile /var/run/$NAME.pid \--exec $DAEMON || trueecho "$NAME.";;status)status_of_proc -p /var/run/$NAME.pid "$DAEMON" nginx && exit 0 || exit $?;;*)echo "Usage: $NAME {start|stop|restart|reload|force-reload|status}" >&2exit 1;;
esacexit 0
复制代码

sudo update-rc.d nginx defaults

php-fpm

sudo cp /opt/setup/php-5.4.29/sapi/fpm/init.d.php-fpm.in /etc/init.d/php-fpm
sudo groupadd nobody
sudo touch /opt/software/php/var/run/php-fpm.pid
sudo update-rc.d php-fpm defaults
vim /etc/init.d/php-fpm

替换如下内容

prefix=@prefix@
exec_prefix=@exec_prefix@php_fpm_BIN=@sbindir@/php-fpm
php_fpm_CONF=@sysconfdir@/php-fpm.conf
php_fpm_PID=@localstatedir@/run/php-fpm.pid

变成

prefix=/opt/software/php
exec_prefix=/opt/software/php/binphp_fpm_BIN=/opt/software/php/sbin/php-fpm
php_fpm_CONF=/opt/software/php/etc/php-fpm.conf
php_fpm_PID=/opt/software/php/var/run/php-fpm.pid

MySQL

复制代码
sudo cp /opt/software/mysql/support-files/mysql.server /etc/init.d/mysqld
sudo vim /etc/init.d/mysqld
#找到
basedir=
datadir=
#变成
basedir=/opt/software/mysql
datadir=/opt/software/mysql/datasudo update-rc.d mysqld defaults
复制代码

10. 加入环境变量

sudo vim /etc/profile

加入

export PATH=$PATH:/opt/software/mysql/bin:/opt/software/php/bin:/opt/software/php/sbin:/opt/software/mysql/bin

加载

source /etc/profile

至此,基本上就可以使用了。

作者:Bonker
出处:http://www.cnblogs.com/Bonker
QQ:519841366
本页版权归作者和博客园所有,欢迎转载,但未经作者同意必须保留此段声明, 且在文章页面明显位置给出原文链接,否则保留追究法律责任的权利

相关文章:

QGC注释消息提示框

消息提示框:有时显示时覆盖想要看的界面,可注释!

学习编写Unity计算着色器 Learn to Write Unity Compute Shaders

利用图形处理器的力量 你会学到: 如何编写Unity计算着色器 如何在后处理图像过滤器中使用ComputeShaders 如何使用ComputeShaders进行粒子效果和群集 如何使用StructuredBuffers在计算着色器和实例表面着色器之间共享数据 使用计算机处理器处理流体模拟 使用计算机开发者创建物…

[重磅] 让HTML5达到原生的体验 系列之中的一个 避免切页白屏

非常多人都想、甚至曾使用HTML5开发跨平台App。而且想达到原生App的体验。最后的结果都是无奈的放弃。HTML5貌似美好,但坑太多。想做到原生App的体验差点儿不可为。 也曾有过著名的facebook放弃HTML5改用原生做App的事件。可是坑多不怕,就怕没人填。 本系…

测试中如何管理外包质量_如何从测试自动化中实现价值

如果几年前,质量管理部门都试图通过ROI指标来证明对测试的投资是合理的,那么现在情况发生了变化,是时候重新审视这个问题了。当实施连续测试,并且每天在不同的环境下以不同的角色运行多次测试自动化时,由于测量方法与以…

2022-2028年中国碘矿行业竞争格局分析及市场需求前景报告

【报告类型】产业研究 【报告价格】4500起 【出版时间】即时更新(交付时间约3个工作日) 【发布机构】智研瞻产业研究院 【报告格式】PDF版 本报告介绍了中国碘矿行业市场行业相关概述、中国碘矿行业市场行业运行环境、分析了中国碘矿行业市场行业的…

centos下axel安装与使用

一、获得Axel32位系统:wget -c http://www.centoscn.com/tool/axel-2.4-1.el5.rf.i386.rpm rpm -ivh axel-2.4-1.el5.rf.i386.rpm #安装64位系统:wget -c http://www.centoscn.com/tool/axel-2.4-1.el5.rf.x86_64.rpm rpm -ivh axel-2.4-1.el5.rf.x86_64…

Qt编译PX4源码,参考如下进行配置

参考链接: https://blog.csdn.net/qq_38768959/article/details/106822491如单独打开一个的话可以选择打开仿真编译套件,如需下载则选择下载套件!

Unity三维游戏开发C#编程大师班 Masterclass In C# Programing Unity 3D Game Development FPS

本课程采用现代游戏开发(Unity 2021)的最新内容和最新技术 学习任何东西的最好方法是以一种真正有趣的方式去做,这就是这门课程的来源。如果你想了解你看到的这些不可思议的游戏是如何制作的,没有比这门课更好的起点了。我们确保本课程具备一切你需要的…

Integer.toHexString(b & 0xff)理解以及& 0xff什么意思

首先toHexString传的参数应该是int类型32位,此处传的是byte类型8位,所以前面需要补24个0。然后& 0xff 就是把前面24个0去掉只要后8位。toHexString(b & 0xff)相当于做了一次位的与运算,将前24位字符省略,将后8位保留。是两个十六进制的数,每个f用二进制表示是1111,所以占四位(bit),两个f()占八位(bit),八位(bit)也就是一个字节(byte).这个方法是把字节(转换成了int)以16进制的方式显示。我的理解是这样,如有不对欢迎指正!

DIV+CSS规范命名大全集合

网页制作中规范使用DIVCSS命名规则,可以改善优化功效特别是团队合作时候可以提供合作制作效率,具体DIV CSS命名规则CSS命名大全内容篇。 常用DIVCSS命名大全集合,即CSS命名规则 DIV CSS命名目录命名规则说明重要CSS命名CSS命名参考表命名技巧…

Java中的位运算符号详解(&、|、^、~、<<、>>、>>>)

(&&)在运算时,如果(&&)前面的表达式的结果为false,则(&&)后面的表达式就不会执行运算。(||)在运算时,如果(||)前面的表达式的结果为true,则(||)后面的表达式就不会执行运算。(&)在运算时,不论(&)前面的表达式的结果是否为false,(&)后面的表达式都会执行运算;(|)在运算时,不论(|)前面的表达式的结果是否为true,(|)后面的表达式都会执行运算;在Java中,(&)不仅可以作为位运算符号,同样也可以作为逻辑与符号,要注意:(||)并不是位运算符号,不可以参与位运算!

unity 200.8m yoy_专场分享会|大会最新Unity、中创文旅专场预告来啦!

北京国际游戏创新大会将于9月25日-27日分别在中华世纪坛发布厅、中华世纪坛剧场、京都信苑国际厅、京都信苑欧式厅、京都信苑圣马可厅、京都信苑第三会议室,6大场馆举办129场游戏行业主题分享,之前小编已经给大家介绍过腾讯、微软、完美世界、巨量引擎等…

2022-2028年中国碲化镉薄膜太阳能电池行业发展现状分析及投资前景趋势报告

【报告类型】产业研究 【报告价格】4500起 【出版时间】即时更新(交付时间约3个工作日) 【发布机构】智研瞻产业研究院 【报告格式】PDF版 本报告介绍了中国碲化镉薄膜太阳能电池行业市场行业相关概述、中国碲化镉薄膜太阳能电池行业市场行业运行环…

从高耦合到低耦合到底有多远?

一切都是拥抱变化,反过来说,如果没有变化或者需求很稳定,那么一切就是过度设计。所以,一切都要看情况,回到了马克思主义的辩证学。呵呵。无论书还是博客, 耦合这个词已被无数人说烂,任何一位程序…

写论文查论文查参考文献

知网翻译助手:网页知网翻译助手 百度学术:百度学术—导出参考文献 IEEE:IEEE 添加上标:如下图 添加后,如下图: 添加完成! WPS软件里面的公式编辑器添加空格为CtrlAltSpace即可! …

C# Unity编程终极指南

使用现代Unity开发技术创建一个有趣的2D平台,掌握Unity引擎和C#编程 你会学到: 学习C#的基础知识。从变量、“如果”语句到创建面向对象的结构。没有编程经验是必要的。 创建一个可玩的角色(征服者),具有动画,向任何方向移动,跳跃…

咪咕盒子链接服务器失败_云服务器怎样备份数据库备份

云服务器怎样备份数据库备份?云服务器数据库的备份很重要,而手动操作会比较麻烦。以西部数码云服务器为例,可以实现 Ms Sqlserver数据库定时自动备份,并存至指定存储空间。打开链接 下载,下载后无需安装,点…

在Ubuntu下构建Bullet以及执行Bullet的样例程序

在Ubuntu下构建Bullet以及执行Bullet的样例程序1、找到Bullet的下载页,地址是:https://code.google.com/p/bullet/downloads/list2、下载Bullet。找到.tgz格式进行下载。我下载的版本号是bullet-2.82-r2704。 3、假设没有安装cmake,那么使用s…

2022-2028年中国第五代移动通信技术(5G)市场研究及前瞻分析报告

【报告类型】产业研究 【报告价格】4500起 【出版时间】即时更新(交付时间约3个工作日) 【发布机构】智研瞻产业研究院 【报告格式】PDF版 本报告介绍了中国第五代移动通信技术(5G)行业市场行业相关概述、中国第五代移动通信…

机房合作—我是组长

五一期间开始机房合作,到现在一个多星期了。我,蕾蕾,亮亮一组,我担任组长一职。在着手准备项目开始之前,我们听取了各位师父的一些建议,也算是给我们指明一下方向。第一天晚上,我召开了我们项目…

Linux环境下命令行截图【转】

参考链接:命令行截图 将剪切板内容粘贴出来:CtrlV

用Unity和Playmaker创建一个限时游戏 Creating a Time Limit game with Unity and Playmaker

本课程结束时,您将拥有在Unity中使用Playmaker创建游戏的工具 你会学到: playmaker状态的基础以及它们如何与动作一起工作。 安装悬停车,可以在竞技场内行驶。 不同力度的射击地雷驱动中心机。 设置坏地雷和电源盒。 设置主时光机机制。 影响时间机器的…

app.vue 跳转页面_独立站如何提高产品页面转化呢?

在网上商城中,你的产品页面也是销售页面。顾客进入产品页面,然后根据你提供的产品描述内容,再决定是否立马购买,或者以后再考虑购买。以下是小跨收集的可以用于提高你独立站产品描述页面转化的几个要素。1.撰写激动人心的产品标题…

原生javascript实现放大镜效果

2019独角兽企业重金招聘Python工程师标准>>> html部分&#xff1a; <div class"main"><div id"xiaotu" class"xiaotu"><img src"http://zhangyan520.com/1.jpg" alt"" /><div id"yido…

新建个人博客参考

各种配置过程&#xff1a;新建参考 如果输入链接&#xff0c;出现如下截图&#xff0c;参考&#xff1a;报错404

C4D+ PS打造城市场景 Create a Cityscape with Cinema 4D + Photoshop

初级到中级课程&#xff0c;包括创建真实的城市景观可视化的步骤 你会学到: 建筑三维建模所涉及的创造性和技术性步骤。 使用变形器和MoGraph克隆器创建建筑变体&#xff0c;以更改每个建筑的形状。 创建城市街区&#xff0c;添加环境和提高中央处理器性能的技巧。 使用Adobe …

抽象工厂————三层架构

抽象工厂作用:降低BLL和Model层耦合度 核心思想:1.通过接口类实现对象的分离 2.通过一个类&#xff0c;实现指定对象的创建&#xff0c;并且这个类通过配置文件决定获取哪个对象 这样只要调用一个接口和这个类&#xff0c;就能实现BLL和Model的分离 这样做的优点是便于维护和…

jQuery 一次定时器_干货 | 小论定时器玩法(时间轮询法)

EEWORLD电子资讯 犀利解读 技术干货 每日更新经常来说&#xff0c;对于一些不复杂的单片机应用&#xff0c;而且对于内存和存储要求比较严格&#xff0c;又需要多分时去处理一些指定的任务&#xff0c;在无法使用RTOS的情况下&#xff0c;使用一个硬件定时器&#xff0c;来建立…

第一次团队冲刺2

今天在自己电脑上搭建了webservice&#xff0c;学习了很多关于webservice的知识&#xff0c;但还有很多不懂的。 还没有做好连接&#xff0c;其他的如查询等也没做。转载于:https://www.cnblogs.com/318abc/p/4504085.html

基于四元数互补滤波的无人机姿态解算

导航坐标系为东北天&#xff08;ENU&#xff09;&#xff0c;其与机体坐标系&#xff08;b&#xff09;的方向余弦矩阵为CbcC_{b}^{c}Cbc​