lnmp环境源码编译安装记录

系统:Cenos 6.5 X64

软件:

tengine-2.0.3.tar.gz

pcre-8.33.tar.bz2

mysql-5.6.12.tar.gz

php-5.5.14.tar.bz2


一、安装nginx

1.1 安装nginx所需的pcre-devel库,使nginx支持HTTP Rewrite模块

[[email protected]]# ./configure --prefix=/home/webserver/pcre  && make && make install

1.2 安装nginx

[[email protected] ~]# yum-y install openssl openssl-devel

[[email protected] ~]# tarzxf tengine-2.0.3.tar.gz

[[email protected] ~]# cdtengine-2.0.3

[[email protected]]# ./configure \

--prefix=/home/webserver/nginx\

--with-http_stub_status_module  \

--with-pcre=/root/pcre8.33/ \

--with-http_realip_module

#注意pcre不是安装到的位置,而是pcre源码包的位置

[[email protected]]# make && make install

二、安装Mysql:

2.1 安装mysql

[[email protected]]# useradd -s /sbin/nologin mysql

[[email protected]]# yum -y install cmake ncurses ncurses-devel

[[email protected]]# cmake . -DCMAKE_INSTALL_PREFIX=/home/webserver/mysql-DMYSQL_UNIX_ADDR=/home/webserver/mysql/mysql.sock -DDEFAULT_CHARSET=utf8-DDEFAULT_COLLATION=utf8_general_ci -DWITH_MYISAM_STORAGE_ENGINE=1-DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1-DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DENABLED_LOCAL_INFILE=1-DMYSQL_DATADIR=/home/webserver/database -DMYSQL_USER=mysql

[[email protected]]# make && make install

[[email protected]]# chown  -R  mysql:mysql /home/webserver/mysql/

2.2 初始化数据库:

[[email protected]]# chmod  +xscripts/mysql_install_db

[[email protected]]# ./scripts/mysql_install_db --user=mysql --basedir=/home/webserver/mysql--datadir=/home/webserver/database

2.3 创建配置文件:

[[email protected] mysql-5.6.12]#cp support-files/my-default.cnf /etc/my.cnf

cp:是否覆盖"/etc/my.cnf"? y

2.4 创建启动脚本:

[[email protected]]# cp support-files/mysql.server /etc/init.d/mysqld

[[email protected]]# chmod +x /etc/init.d/mysqld

[[email protected]]# chkconfig --add mysqld

[[email protected] mysql-5.6.12]# ckconfig mysqld on

[[email protected]]# chkconfig mysqld --list

mysqld          0:关闭  1:关闭  2:启用  3:启用  4:启用  5:启用  6:关闭

2.5 加mysql bin目录到$PATH中

[[email protected]]# echo ‘export PATH=$PATH:/home/webserver/mysql/bin‘ >>/etc/profile

[[email protected]]# source  /etc/profile

2.6 启动mysql:

[[email protected]]# /etc/init.d/mysqld start

Starting MySQL...SUCCESS!

2.7 设置mysql root用户密码:

[[email protected]]# mysqladmin  -u rootpassword ‘zrer90‘

三、安装PHP

3.1 安装php依赖库

3.1.1:安装jpeg9

[[email protected] ~]# wgethttp://www.ijg.org/files/jpegsrc.v9.tar.gz

[[email protected] ~]# tar-zxvf jpegsrc.v9.tar.gz

[[email protected] ~]# cdjpeg-9/

[[email protected] jpeg-9]#./configure  --prefix=/home/webserver/libs  --enable-shared --enable-static &&make && make install

3.1.2:安装png

[[email protected] ~]#     wgethttp://prdownloads.sourceforge.net/libpng/libpng-1.6.2.tar.gz

[[email protected] ~]# tarzxf libpng-1.6.2.tar.gz

[[email protected] ~]# cdlibpng-1.6.2

[[email protected]]# ./configure --prefix=/home/webserver/libs/ && make&& make install

3.1.3:安装freetype

[[email protected] ~]#      wgethttp://download.savannah.gnu.org/releases/freetype/freetype-2.4.12.tar.gz

[[email protected] ~]# tarzxf freetype-2.4.12.tar.gz

[[email protected] ~]# cdfreetype-2.4.12

[[email protected]]# ./configure --prefix=/home/webserver/libs && make&& make install

3.1.4:安装libmcrypt:

[[email protected] ~]#wget http://downloads.sourceforge.net/project/mcrypt/Libmcrypt/2.5.8/libmcrypt-2.5.8.tar.gz

[[email protected] ~]# tarzxf libmcrypt-2.5.8.tar.gz

[[email protected]]# ./configure --prefix=/home/webserver/libs  && make && make install

[[email protected]]# cd libltdl/

[[email protected]]# ./configure --prefix=/home/webserver/libs/ --enable-ltdl-install  && make && make install

3.1.5:安装mhash:

[[email protected] ~]# wgethttp://downloads.sourceforge.net/mhash/mhash-0.9.9.9.tar.gz

[[email protected] ~]# tarzxf mhash-0.9.9.9.tar.gz

[[email protected] ~]# cdmhash-0.9.9.9

[[email protected]]# ./configure --prefix=/home/webserver/libs/ && make&& make install

[[email protected] ~]#export LDFLAGS="-L/home/webserver/libs/lib -L/usr/lib"

[[email protected] ~]#export CFLAGS="-I/home/webserver/libs/include -I/usr/include"

###这命令的作用是把安装的lib库连接到/usr/lib下,因为php安装时默认只搜索/urs/lib,不设置的话可能会造成后面mcrypt编译的时候找不到mhash库.

3.1.6:安装mcrypt:

[[email protected] ~]# exportLD_LIBRARY_PATH=/home/webserver/libs/lib:/home/webserver/libs

##这命令的作用是设置gcc编译环境变量

[[email protected] ~]# wgethttp://downloads.sourceforge.net/mcrypt/mcrypt-2.6.8.tar.gz

[[email protected]]# ./configure --prefix=/home/webserver/libs/  --with-libmcrypt-prefix=/home/webserver/libs  && make && make install

3.2 安装PHP:

[[email protected] ~]# yum-y install curl curl-devel  libxml2libxml2-devel zlib-devel  zlib

[[email protected]]#./configure --prefix=/home/webserver/php --with-config-file-path=/home/webserver/php/etc--with-mysql=/home/webserver/mysql/--with-mysqli=/home/webserver/mysql/bin/mysql_config --with-iconv-dir--with-freetype-dir=/home/webserver/libs --with-jpeg-dir=/home/webserver/libs/--with-png-dir=/home/webserver/libs --with-zlib --with-libxml-dir=/usr/bin/xml2-config  --enable-xml --enable-bcmath--enable-sysvsem --enable-inline-optimization --with-curl --with-mhash --with-openssl--enable-shmop --enable-mbstring --with-gd --enable-gd-native-ttf --enable-pcntl--enable-sockets --with-xmlrpc --enable-zip--with-pdo-mysql=/home/webserver/mysql/ --with-mcrypt=/home/webserver/libs      --enable-fpm  --disable-rpath     --enable-mbregex    --enable-soap --enable-opcache

[[email protected]]# make && maek install

3.3 创建PHP配置文件,删除系统自带的配置文件,将配置文件做软连接到/etc/ php.ini

[[email protected]]# cp php.ini-production /home/webserver/php/etc/php.ini

[[email protected]]# rm -rf /etc/php.ini

[[email protected]]# ln -s /home/webserver/php/etc/php.ini  /etc/php.ini

3.4 修改PHP配置文件开启短标记,开启opcache

[[email protected]]# vim /home/webserver/php/etc/php.ini

short_open_tag = on (默认为OFF)

display_errors = OFF

[opcache]

zend_extension="opcache.so"

opcache.enable=1

opcache.enable_cli=1

opcache.memory_consumption=128

opcache.optimization_level=1

opcache.interned_strings_buffer=8

opcache.max_accelerated_files=4096

opcache.revalidate_freq=60

opcache.fast_shutdown=1

[[email protected]~]# cd /home/webserver/php/etc/

[[email protected]]# cp php-fpm.conf.default php-fpm.conf

[[email protected]]# vim php-fpm.conf

[global]

; Pid file

; Note: the defaultprefix is /home/webserver/php/var

; Default Value: none

;pid = run/php-fpm.pid

pid = run/php-fpm.pid   #开启php-fpm  pid文件

四、配置nginx和php

4.1 创建nginx运行用户www

[[email protected] ~]# useradd -s /sbin/nologin www

4.2 修改nginx配置文件 ,

user www;

worker_processes 1;

events {

worker_connections  1024;

}

http {

include       mime.types;

default_type application/octet-stream;

sendfile        on;

keepalive_timeout  65;

server {

listen       80;

server_name  localhost;

location / {

root   html;

index  index.html index.htm;

}

location ~ .*\.(php|php5)?$ {

fastcgi_pass    127.0.0.1:9000;

fastcgi_index   index.php;

include         fastcgi.conf; #将*.php 或者.php5的请求转交给本地php-fpm处理

}

error_page   500 502 503 504  /50x.html;

location = /50x.html {

root   html;

}

}

}

4.3 使用nginx –t测试nginx配置文件

[[email protected] ~]# /home/webserver/nginx/sbin/nginx  -t

the configuration file/home/webserver/nginx/conf/nginx.conf syntax is ok

configuration file/home/webserver/nginx/conf/nginx.conf test is successful

4.4 启动nginx,启动php

[[email protected] ~]#/home/webserver/nginx/sbin/nginx

[[email protected] ~]#/home/webserver/php/sbin/php-fpm

4.5 下载探针文件到nginx安装目录下的 html目录下。

4.6  浏览器访问探针文件,查看lnmp安装情况,测试与mysql链接情况

4.7 所遇到的报错:

安装mcrypt时报错:

checking whether mhash >= 0.8.15...no

configure: error: "You need at leastlibmhash 0.8.15 to compile this program. http://mhash.sf.net/"

原因:

mhash编译默认安装路径是 /usr/local/,相关库在 /usr/local/lib 下。而 php 只搜索 /usr/lib/ 这个位置。所以会出现找不到 mhash 相关库的情况。

解决方法:

通过软链接的方法把 /usr/local/lib 目录下的 mhash 相关的库文件链接到 /usr/lib/ 目录下。

重装PHP报错:

configure: error: GD build test failed.Please check the config.log for details.

解决办法:

vim /etc/ld.so.conf  在这个文件里面加入configure所使用的lib路径

ldconfig

报错:

checking for known struct flockdefinition... configure: error: Don‘t know how to define struct flock on thissystem, set --enable-opcache=no

解决办法:

ln -s/home/webserver/mysql/lib/libmysqlclient.so /usr/lib

ln -s/home/webserver/mysql/lib/libmysqlclient.so.18 /usr/lib/libmysqlclient.so.18

vim /etc/ld.so.conf   在这个文件内加入软连接到的 /usr/lib路径

ldconfig

lnmp环境源码编译安装记录

时间: 2024-11-08 18:21:15

lnmp环境源码编译安装记录的相关文章

mysql5.7.10 源码编译安装记录 (centos6.4)【转】

一.准备工作 1.1 卸载系统自带mysql 查看系统是否自带MySQL, 如果有就卸载了, 卸载方式有两种yum, rpm, 这里通过yum卸载 rpm -qa | grep mysql //查看系统自带mysql yum -y remove mysql-* //卸载mysql rpm -e --nodeps mysql-5.1.73-3.el6_5.x86_64 //卸载mysql 1.2 卸载系统自带boost,并安装boost_1_59_0 mysql 5.7 依赖于boost_1_59

Linux环境源码编译安装SVN

zhoulf 2015/2/28 原创 安装说明 安装环境:Red Hat Enterprise Linux 安装方式:源码安装 软件:apr-1.5.0.tar.gz.apr-iconv-1.2.1.tar.gz.apr-util-1.5.3.tar.gz.sqlite-amalgamation-201311181848.zip.subversion-1.8.4.tar.gz 安装前提 安装之前要安装apr.apr-util.apr-iconv软件 安装 将subversion-1.8.4.t

MySQL-5.6.29源码编译安装记录

一.安装环境 1. 操作系统:CentOS 6.7 x86_64 # yum install make cmake gcc gcc-c++ gcc-g77 flex bison file libtool libtool-libs autoconf kernel-devel patch wget libjpeg libjpeg-devel libpng libpng-devel libpng10 libpng10-devel gd gd-devel libxml2 libxml2-devel zl

CentOS 7上源码编译安装和配置LNMP Web+phpMyAdmin服务器环境

什么是LNMP? LNMP(别名LEMP)是指由Linux, Nginx, MySQL/MariaDB, PHP/Perl/Python组合成的动态Web应用程序和服务器,它是一组Web应用程序的基础软件包,在这个基础环境上我们可以搭建任何使用PHP/Perl/Python等语言的动态网站,如商务网站.博客.论坛和开源Web应用程序软件等,它是互联网上被广泛使用的Web网站架构之一. 部署方式 从网站规模大小(访问流量.注册用户等)角度来看,LNMP架构可以使用单机部署方式和集群部署方式.单机部

源码编译安装lnmp环境

一.源码编译安装步骤 首先说明源码安装的好处   速度快,可自定义路径 主要有三步:1.配置 进入源码安装包  ./configure --prefix=/uer/local/nginx  可指定参数--prefix为安装路径2.编译 相当于rpm包  make3.安装 make install 如果安装出错,先清楚一下 make clean,然后重新配置编译安装 二.安装nginx 1.安装可能需要的依赖环境, yum -y install libxml2-devel gd-devel lib

源码编译安装lnmp架构

lnmp的架构 lnmp架构为:linux +nginx +mysql+php/perl/python,我们将只用linux(rhel6.5)+nginx+mysql+php构建企业web架构 环境:RHEL6.5 iptables -F selinux is  disabled 注意:在搭建lnmp环境前,必须检测系统内部不能存在相关的软件:(纯净搭建) #rpm -qa | grep php #rpm -qa | grep httpd #rpm -qa | grep mysql 1.ngin

LNMP源码编译安装

系统环境为Centos6.5 1.配置防火墙,开启80端口.3306端口 vi /etc/sysconfig/iptables  #编辑防火墙配置文件,将下面两条规则添加到22端口规则下面 -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT(允许80端口通过防火墙) -A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT(允许3306端口通过

CentOS7.4 源码编译安装LNMP

1.基于CentOS7.4源码编译安装得lnmp 系统环境CentOS 7.4 系统最小化安装,只安装了一些常用包(vim.lirzs.gcc*.wget.bash-completion) nginx版本1.14.0 mysql版本5.7.20 php版本7.2.6 1.1 下载网络yum源 [[email protected]_4 ~]# wget http://mirrors.aliyun.com/repo/Centos-7.repo -P /etc/yum.repos.d/    #这里安

LAMP环境官方最新源码编译安装

前言 Linux+Apache+Mysql/MariaDB+Perl/PHP/Python一组常用来搭建动态网站或者服务器的开源软件,本身都是各自独立的程序,但是因为常被放在一起使用,拥有了越来越高的兼容度,共同组成了一个强大的Web应用程序平台.随着开源潮流的蓬勃发展,开放源代码的LAMP已经与J2EE和.Net商业软件形成三足鼎立之势,并且该软件开发的项目在软件方面的投资成本较低,因此受到整个IT界的关注.从网站的流量上来说,70%以上的访问流量是LAMP来提供的,LAMP是最强大的网站解决