LNMP环境安装

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS MySQL,高可用系列 2核4GB
简介: 该文档为制作LNMP一键安装脚本而写,命令比较少注释,基本复制粘贴一步到底,也是为方便大家制作一键安装脚本。系统环境:centos5.8 64位1、Nginx安装1.1 安装nginx所需的pcre库 pcre全称(Perl CompatibleRegular Exp...

该文档为制作LNMP一键安装脚本而写,命令比较少注释,基本复制粘贴一步到底,也是为方便大家制作一键安装脚本。


系统环境:centos5.8 64位


1Nginx安装


1.1 安装nginx所需的pcre

 pcre全称(Perl CompatibleRegular Expressions),安装pcre库是为了使nginx支持http rewrite模块


cd /usr/local/src

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

tar zxf pcre-8.30.tar.gz 

cd pcre-8.30

./configure

make && make install



1.2 安装nginx

cd /usr/local/src

wget http://nginx.org/download/nginx-1.2.9.tar.gz

useradd nginx -s /sbin/nologin -M

tar zxf nginx-1.2.9.tar.gz

cd nginx-1.2.9

./configure --user=nginx --group=nginx --prefix=/application/nginx-1.2.9 --with-http_stub_status_module --with-http_ssl_module

make && make install

ln -s /application/nginx-1.2.9 /application/nginx

ll /application/nginx

echo /usr/local/lib >>/etc/ld.so.conf

ldconfig

/application/nginx/sbin/nginx -t 

#检查语法

/application/nginx/sbin/nginx 

#启动nginx


1.3 测试nginx


175110560.jpg



2MySQL安装

2.1 安装mysql软件

wget http://mysql.ntu.edu.tw/Downloads/MySQL-5.1/mysql-5.1.68.tar.gz

user add -s /sbin/nologin -M mysql

tar zxf mysql-5.1.68.tar.gz 

cd mysql-5.1.68

./configure \

--prefix=/application/mysql5.1.68 \

--with-unix-socket-path=/application/mysql5.1.68/tmp/mysql.sock \

--localstatedir=/application/mysql5.1.68/data \

--enable-assembler \

--enable-thread-safe-client \

--with-mysqld-user=mysql \

--with-big-tables \

--without-debug \

--with-pthread \

--enable-assembler \

--with-extra-charsets=complex \

--with-readline \

--with-ssl \

--with-embedded-server \

--enable-local-infile \

--with-mysqld-ldflags=-all-static \

--with-client-ldflags=-all-static

make && make install


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

#Mysql配置文件,默认存放在support-files路径下,但mysql调用的配置文件为/etc/my.cnf

ln -s /application/mysql5.1.68 /application/mysql 



2.2 初始化mysql数据库

mkdir -p /application/mysql/data

chown -R mysql /application/mysql

/application/mysql/bin/mysql_install_db --basedir=/application/mysql --datadir=/application/mysql/data --user=mysql 

#初始化mysql数据文件,--basedir为数据库目录 --datadir为创建数据库和表的存放地




2.3 启动mysql


方法一:

cp support-files/mysql.server /application/mysql/bin/

chmod 700 /application/mysql/bin/mysql.server

/application/mysql/bin/mysql.server start

/application/mysql/bin/mysql.server stop


方法二:

/application/mysql/bin/mysqld_safe --user=mysql &


方法三:

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

chmod 700 /etc/init.d/mysql

/etc/init.d/mysql start




2.4 mysql测试

mysqladmin -u root password'123456' 

mysql -uroot -p123456 -e "select version();"


3PHP安装

首先需安装php相应的库文件

3.1 检查PHP所需lib

rpm -qa zlib libxml libjpeg freetype libpnggd curl libiconv zlib-devel libxml2-devel libjpeg-devel freetype-devel libpng-devel gd-devel curl-devel

如果安装操作系统时未选择X software development软件包,则可能没有上述lib库,可以通过下面命令补装

yum groupinstall "X Software Development"


3.2 安装libiconv

cd /usr/local/src

wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.14.tar.gz

tar -zxf libiconv-1.14.tar.gz

cd libiconv-1.14

./configure --prefix=/usr/local/libiconv

make

make install

cd ../


3.3 安装libmcrypt

cd /usr/local/src

wget "http://downloads.sourceforge.net/mcrypt/libmcrypt-2.5.8.tar.gz?modtime=1171868460&big_mirror=0"

tar zxf libmcrypt-2.5.8.tar.gz

cd libmcrypt-2.5.8

./configure

make

make install

sleep 2 

/sbin/ldconfig

cd libltdl/

./configure --enable-ltdl-install

make

make install

cd ../../



3.4 安装mhash加密扩展库

wget "http://downloads.sourceforge.net/mhash/mhash-0.9.9.9.tar.gz?modtime=1175740843&big_mirror=0"

tar zxf mhash-0.9.9.9.tar.gz

cd mhash-0.9.9.9/

./configure

make

make install

sleep 2

cd ../


这儿为32位系统的库文件链接

rm -f /usr/lib/libmcrypt.*

rm -f /usr/lib/libmhash*

ln -s /usr/local/lib/libmcrypt.la /usr/lib/libmcrypt.la

ln -s /usr/local/lib/libmcrypt.so /usr/lib/libmcrypt.so

ln -s /usr/local/lib/libmcrypt.so.4 /usr/lib/libmcrypt.so.4

ln -s /usr/local/lib/libmcrypt.so.4.4.8 /usr/lib/libmcrypt.so.4.4.8

ln -s /usr/local/lib/libmhash.a /usr/lib/libmhash.a

ln -s /usr/local/lib/libmhash.la /usr/lib/libmhash.la

ln -s /usr/local/lib/libmhash.so /usr/lib/libmhash.so

ln -s /usr/local/lib/libmhash.so.2 /usr/lib/libmhash.so.2

ln -s /usr/local/lib/libmhash.so.2.0.1/usr/lib/libmhash.so.2.0.1

ln -s /usr/local/bin/libmcrypt-config /usr/bin/libmcrypt-config


这儿为64位系统的库文件链接

rm -f /usr/lib64/libmcrypt.*

rm -f /usr/lib64/libmhash*

ln -s /usr/local/lib/libmcrypt.la /usr/lib64/libmcrypt.la

ln -s /usr/local/lib/libmcrypt.so /usr/lib64/libmcrypt.so

ln -s /usr/local/lib/libmcrypt.so.4 /usr/lib64/libmcrypt.so.4

ln -s/usr/local/lib/libmcrypt.so.4.4.8 /usr/lib64/libmcrypt.so.4.4.8

ln -s /usr/local/lib/libmhash.a /usr/lib64/libmhash.a

ln -s /usr/local/lib/libmhash.la /usr/lib64/libmhash.la

ln -s /usr/local/lib/libmhash.so /usr/lib64/libmhash.so

ln -s /usr/local/lib/libmhash.so.2 /usr/lib64/libmhash.so.2

ln -s /usr/local/lib/libmhash.so.2.0.1 /usr/lib64/libmhash.so.2.0.1

ln -s /usr/local/bin/libmcrypt-config /usr/bin/libmcrypt-config



3.5 安装mcrypt加密扩展库

wget "http://downloads.sourceforge.net/mcrypt/mcrypt-2.6.8.tar.gz?modtime=1194463373&big_mirror=0"

tar zxf mcrypt-2.6.8.tar.gz

cd mcrypt-2.6.8/

/sbin/ldconfig

./configure

make

make install

cd ../

sleep 2


3.6 安装php

 php5.2版本需要安装php-fpm补丁

 php5.3以后版本,源码中已经内嵌了 php-fpm,不需要安装补丁包,只需要在configure的时候添加编译参数即可,


wget http://cn2.php.net/get/php-5.3.27.tar.gz/from/this/mirror

tar zxf php-5.3.27.tar.gz 

cd php-5.3.27

./configure \

--prefix=/application/php5.3.27 \

--with-mysql=/application/mysql \

--with-iconv-dir=/usr/local/libiconv \

--with-freetype-dir \

--with-jpeg-dir \

--with-png-dir \

--with-zlib \

--with-libxml-dir=/usr \

--enable-xml \

--disable-rpath \

--enable-safa-mode \

--enable-bcmath \

--enable-shmop \

--enable-sysvsem \

--enable-inline-optimization \

--with-curl \

--with-curlwrappers \

--enable-mbregex \

--enable-fpm \

--enable-mbstring \

--with-mcrypt \

--with-gd \

--enable-gd-native-ttf \

--with-openssl \

--with-mhash \

--enable-pcntl \

--enable-sockets \

--with-ldap \

--with-ldap-sasl \

--with-xmlrpc \

--enable-zip \

--enable-soap \

--enable-short-tags \

--enable-zend-multibyte \

--enable-static \

--with-xsl \

--with-fpm-user=nginx \

--with-fpm-group=nginx \

--with-libevent-dir \

--enable-ftp 


make && make install


ln -s /application/php5.3.27/ /application/php 

/bin/cp /usr/local/src/php-5.3.27/php.ini-production /application/php5.3.27/lib/php.ini

#把默认生产配置文件做为PHP配置文件

cp /application/php/etc/php-fpm.conf.default /application/php/etc/php-fpm.conf

#把默认php-fpm.conf.default进程管理文件改名为php/etc/php-fpm.conf

/application/php/sbin/php-fpm -t 

#校验语法

/application/php/sbin/php-fpm 

 #启动php



4Nginx关联PHP

4.1 修改nginx相关配置

修改nginx配置(该文件为nginx默认配置文件,未修改过),在47行位置,插入下列内容

 35 server {

 36 listen 80;

 37 server_name localhost;

 38 

 39 #charset koi8-r;

 40 

 41 #access_log logs/host.access.log main;

 42 

 43 location / {

 44 root html;

 45 index index.html index.htm;

 46 }

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

 48  fastcgi_pass 127.0.0.1:9000;

 49  fastcgi_index index.php; 

 50  include fastcgi.conf;

 51  }


站点目录为默认路径,在站点目录添加php配置

[root@yangrongnginx]# cat >/application/nginx/html/index.php <<EOF

 <?php

 phpinfo();

 ?>

 EOF

#上面为php长标签格式,短标签格式为(短标签默认不打开)

#<?

#phpinfo();

#?>


/application/nginx/sbin/nginx -t

/application/nginx/sbin/nginx -s reload


4.2 测试PHP连接

在浏览器输入IP/index.php

175109282.jpg




5Nginx关联MySQL

5.1连接数据库配置

[root@yangrongnginx]# cat >/application/nginx/html/mysql.php <<EOF

 <?php

 //$link_id=mysql_connect('主机名','用户','密码');

 $link_id=mysql_connect('127.0.0.1','root','123456') or mysql_error();

 //$link_id=mysql_connect('127.0.0.1','test','');

 if($link_id){

 echo "mysql connect issuccessful!";

 }else{

 echo mysql_error();

 }

 //php单行注释

 /* 这是php多行注释*/

 ?>

 EOF

注意连接数据库的用户名和密码是否正确


5.2 测试

 在浏览器输入IP/mysql.php

175107749.jpg





相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
Web App开发 关系型数据库 应用服务中间件
|
关系型数据库 MySQL 应用服务中间件
|
关系型数据库 应用服务中间件 Linux
|
Web App开发 监控 关系型数据库
zabbix监控之Centos基于LNMP环境安装
  本文描述zabbix在lnmp环境中的搭建过程,为减少配置难度,mysql,php采用yum安装。系统版本是centos6.4。 本安装过程以直接高效的方式叙述。 1、Yum安装mysql mysql使用yum安装方式 yum install mysql-servermysql-devel mysql /etc/init.d/mysqld start   2、Yum安装php yum安装后的php配置文件是/etc/php.ini。
1196 0
|
关系型数据库 MySQL 应用服务中间件
手动部署LNMP环境(Alibaba Cloud Linux 2)
本场景带您体验如何在Alibaba Cloud Linux 2.1903 LTS 64位操作系统的云服务器上搭建LNMP环境。
|
7月前
|
关系型数据库 应用服务中间件 nginx
基于Docker的LNMP环境微服务搭建
基于Docker的LNMP环境微服务搭建
基于Docker的LNMP环境微服务搭建
|
关系型数据库 MySQL 应用服务中间件
快速搭建LNMP环境
Nginx是一款小巧而高效的Web服务器软件,可帮您在Linux系统下快速方便地搭建出LNMP Web服务环境。本教程介绍如何搭建LNMP环境,其中LNMP分别代表Linux、Nginx、MySQL和PHP。
|
关系型数据库 MySQL 应用服务中间件
Nginx__高级进阶篇之LNMP动态网站环境部署
Nginx__高级进阶篇之LNMP动态网站环境部署
220 0
|
应用服务中间件 PHP nginx
基于Anolis OS 3快速搭建LNMP环境制作KodBox
本教程介绍如何搭建LNMP环境,其中本实验的LNMP分别代表Anolis OS 3、Nginx、Mariadb和PHP。
|
关系型数据库 MySQL 应用服务中间件
centos7 配置LNMP环境
centos7 配置LNMP环境
153 0