菜单

LNMP环境搭建,lnmp搭建

2019年2月15日 - 金沙编程资讯
 ./sbin/nginx 

澳门新金沙国际娱乐 1


LNMP环境搭建,lnmp搭建

LNMP环境搭建

Linux + Nginx + MySQL + PHP

PHP是一种脚本语言,当前中华甚至社会风气上行使PHP语言开发的网站分外广阔

Nginx是两个web服务软件,和apache是一类软件,近年来选取nginx的信用社进一步多。

MySQL是时下极其盛行的微型关系型数据库

和LAMP差别的是LNMP中的N指的是Nginx(类似于Apache的一种web服务软件)其余都同一。方今那种环境应用的也是分外之多。Nginx设计的初衷是提供一种高效便捷多出现的web服务软件。在静态页面的处理上Nginx的确胜Apache一筹,不过在动态页面的拍卖上Nginx并不比Apache有多少优势。可是,近期依旧有成百上千胃疼友对Nginx比较热衷,随着Nginx的技术逐步成熟,它在web服务软件领域的身价越来越高。

安装MySQL

步骤和LAMP中的mysql安装步骤是一模一样的。

1,下载mysql到/usr/local/src/

[[email protected]]#wget

那是6三人的包,叁十五个人系统要用30个人的包:

2, 解压下载的包

[[email protected]
src]# tar -xvzf mysql-5.1.40-linux-x86_64-icc-glibc23.tar.gz

3,把解压的包活动到/usr/local/并改名为mysql

[[email protected]
src]# mv mysql-5.1.40-linux-x86_64-icc-glibc23 /usr/local/mysql

4,建立mysql用户

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

5,建立mysql数据库文件夹,并修改所属主和所属组

[[email protected]
mysql]# mkdir -p /data/mysql ; chown -R  mysql:mysql /data/mysql

6,先导化数据库

[[email protected]
mysql]# ./scripts/mysql_install_db –user=mysql
–datadir=/data/mysql

./scripts/mysql_install_db 这些文件是数据库文件夹里的文件,–user
定义数据库的所属主, –datadir
定义数据库安装到哪个地方,提出放手大空间的分区上,那个目录需求活动创立,执行后只要看到八个“OK” 表明履行科学。出标题可根据难题来搞定(最终附难点消除办法!)

7, 拷贝配置文件

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

8, 拷贝运行脚本文件并修改其品质

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

[[email protected]
mysql]# chmod 755 /etc/init.d/mysqld

9, 修改运营脚本

[[email protected]
mysql]# vim /etc/init.d/mysqld

亟需修改的地方有 “datadir=/data/mysql” (前面初阶化数据库时定义的目录)

把运转脚本出席系列服务项,并设定开机运维,运维mysql

[[email protected]
mysql]# chkconfig –add mysqld

[[email protected]
mysql]# chkconfig mysqld on

[[email protected]
mysql]# service mysqld start

借使开行不了,到 /data/mysql/ 下查看错误日志,那几个日志寻常是主机名.err.
检查mysql是不是运维的吩咐为:

[[email protected]
mysql]# ps aux |grep mysqld

 

安装php

那里要先声圣元(Nutrilon)下,针对Nginx的php安装和针对apache的php安装是有分其他,因为Nginx中的php是以fastcgi的法门结合nginx的,可以知晓为nginx代理了php的fastcgi,而apache是把php作为协调的模块来调用的。在LNMP中,安装PHP从前必需先安装mysql,其它的尚未先后顺序。php官方下载地址:

1.下载php

[[email protected]
src]# wget

2.解压php

[[email protected]
src]# tar -xvzf php-5.3.27.tar.gz

3.开立连锁账户

[[email protected]
src]# useradd -s /sbin/nologin php-fpm

4.布置编译参数

[r[email protected]
src]# cd php-5.3.27

[[email protected]
php-5.3.27]# make clean

此命令为了排除从前设置PHP时生成的一部分文书,防止与事先的编译混淆。

[[email protected]
php-5.3.27]# ./configure –prefix=/usr/local/php_nginx
–with-config-file-path=/usr/local/php_nginx/etc –enable-fpm
–with-fpm-user=php-fpm –with-fpm-group=php-fpm
–with-mysql=/usr/local/mysql –with-mysql-sock=/tmp/mysql.sock

–with-libxml-dir –with-gd –with-jpeg-dir –with-png-dir
–with-freetype-dir –with-iconv-dir –with-zlib-dir  –with-mcrypt
–enable-soap –enable-gd-native-ttf –enable-ftp  –enable-mbstring
–enable-exif –enable-zend-multibyte –disable-ipv6 –with-pear
–with-curl –with-openssl

安排参数里和事先的有点差异,–enable-fpm须求加上,不加不能生成fpm文件。–with-config-file-path是指定php配置文件的路线,即php.ini的路子。

错误音讯:

configure: error: Please reinstall the libcurl distribution –

easy.h should be in <curl-dir>/include/curl/

化解办法:

yum install -y libcurl-devel

5.编译php

[[email protected] 
php-5.3.27]# make

在这一步,平日会遭遇有的荒谬

/usr/bin/ld: cannot find –lltdl

collect2: ld returned 1 exit status

make: ***澳门新金沙国际娱乐, [sapi/fpm/php-fpm] 错误 1

化解办法:

yum install -y libtool-ltdl-devel

金沙娱乐官方网站,6.安装php

[[email protected]
php-5.3.27]# make install

上述每三个手续,如果没有完全履行不利,那么下一步是无能为力进行的,是不是还记得判断执行是或不是科学的点子?
使用 echo $? 看结果是还是不是为 “0” , 如若不是,就是从未实施不利。

7.拷贝配置文件

[[email protected]
php-5.3.27]# cp php.ini-production /usr/local/php_nginx/etc/php.ini

[[email protected]
php-5.3.27]# cp sapi/fpm/php-fpm.conf /usr/local/php_nginx/etc/

保留配置文件后,检验配置是或不是正确的形式为:

/usr/local/php_nginx/sbin/php-fpm -t

假定出现诸如 “test is successful” 字样,表明配置没万分。

8.启动php-fpm

先拷贝运行文件 cp /usr/local/src/php-5.3.27/sapi/fpm/init.d.php-fpm
/etc/init.d/php-fpm

chmod 755 /etc/init.d/php-fpm

service php-fpm start

万一想让它开机运营,执行:

chkconfig php-fpm on

检测是还是不是运转:

ps aux |grep php-fpm

netstat -lnp | grep php

tcp    0   0 127.0.0.1:9000    0.0.0.0:*   LISTEN      11265/php-fpm

安装nginx

Nginx官方网站(),
从官方网站可以观看nginx更新速度飞速,那也显示了五个事实,如今使用nginx跑网站的卖家依然个体越多。

(近来nginx报出3个安全漏洞,影响版本很广
CVE-二零一二-4547,所以以前的老版本都须要进步一下, 1.4.4,
1.5.7以及现在版本没相当)

1.下载nginx

cd /usr/local/src/

wget

2.解压nginx

tar -xvzf nginx-1.6.2.tar.gz

3.布置编译参数

cd nginx-1.4.4

./configure –prefix=/usr/local/nginx –with-pcre

编辑进度中出错:

checking for PCRE library … not found

checking for PCRE library in /usr/local/ … not found

checking for PCRE library in /usr/include/pcre/ … not found

checking for PCRE library in /usr/pkg/ … not found

checking for PCRE library in /opt/local/ … not found

  缺乏pcre ,pcre用来支撑正则表达式,化解方法:

  yum install -y pcre-devel

4.编译nginx

make

5.安装nginx

make install

因为nginx比较小,所以高速就会设置完,而且也不会出什么错误。

  1. 运转nginx,nginx很精美,自身没有运转服务文件。

/usr/local/nginx/sbin/nginx

查看:ps aux | grep nginx

      netstat -lnp | grep nginx

测试:从浏览器直接访问本机IP

7.更改nginx配置

安顿文件地点:/usr/local/nginx/conf/nginx.conf

vim /usr/local/nginx/conf/nginx.conf

修改:

events {

    worker_connections  4096;

}

那个值一般调成很大的数。

 

“server { }”相关配置就是虚拟主机,server里面的“location”须求改:

location / {

            root   /web/123;

            index  index.html index.htm index.php;

        }

root指定虚拟主机的目录,那里换来LAMP时设置的discuz的目录。把上面location和php相关的内容打开,并修改:

       location ~ \.php$ {

            root           /web/123;

            fastcgi_pass   127.0.0.1:9000;

            fastcgi_index  index.php;

            fastcgi_param  SCRIPT_FILENAME 
/web/123$fastcgi_script_name;

            include        fastcgi_params;

澳门金沙国际官网, 

保存配置后,先检查一下配置文件是或不是有不当存在:

/usr/local/nginx/sbin/nginx  -t

假设显示内容如下,则安顿不错,否则须要依据错误提醒修改配置文件:

nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is
ok

nginx: configuration file /usr/local/nginx/conf/nginx.conf test is
successful

重复加载nginx:

/usr/local/nginx/sbin/nginx -s reload

一旦不可以运营,请查看 “/usr/local/nginx/logs/error.log” 文件

LNMP 环境搭建 Linux +
Nginx + MySQL + PHP
PHP是一种脚本语言,当前华夏甚至世界上利用PHP语言开发的网站万分广阔
Nginx是一…

指示小编Nothing to do…,呵呵哒,继续命令:

澳门新金沙国际娱乐 2

澳门新金沙国际娱乐 3

./configure --prefix=/usr/local/php --with-mysql=mysqlnd --enable-mysqlnd --with-gd --enable-gd-native-ttf --enable-gd-jis-conv --enable-fpm

配置nginx虚拟机:


 yum -y install gcc gcc-c++ autoconf automake make

澳门新金沙国际娱乐 4

上半节课

yum install pcre

最后三项为禁用nginx作为邮件代理服务器,建议想搭建邮件服务器的同志去阅读nginx搭建邮件服务器的教程。
检查./configure结果,看看有没有报错,有没有缺乏模块,假设一切OK,那么往下继续,假如感觉不对头,可以用./configure
–help认真阅读一下。

 

./configure --prefix=/usr/local/nginx
yum -y install gcc automake autoconf libtool make

 

澳门新金沙国际娱乐 5

然后就OK了。

 

想运维nginx的话只需求输入指令:

OpenSSL:

2、–prefix=/usr/local/php 、–with-config-file-path=/usr/local/php/etc

本次算是安装到位了,简直一波三折:

# systemctl start mysqld

安装nginx

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

澳门新金沙国际娱乐 6

configure: error: jpeglib.h not found.
yum install libjpeg-devel -y

yum install zlib
# cd /usr/local/nginx
# ls
# sbin/nginx

 

到那边就已经到位了LNMP的搭建,别忘了cd /usr/local/php目录运维PHP:

澳门新金沙国际娱乐 7

ps aux |grep nginx |grep -v grep

conf 主要放置配置文件  

重启nginx:

 

指示我Nothing to do…再来一条命令:

解压源码包

SAPI:Server Application Programming Interface
服务器端应用编程接口。它就是PHP与其它应用交互的接口,PHP脚本要履行有很两种主意,通过Web服务器,或然直接在指令行下,也得以停放在任何程序中。
SAPI提供了多个和外部通讯的接口,常见的SAPI有:cgi
、fast-cgi、cli、isapi、apache 模块的 DLL

 cd /usr/local/src  //将安装包下载到/usr/local/src目录下

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

 tar zxvf nginx-1.6.2.tar.gz //解压缩

 cd nginx-1.6.2  //切换到解压后的nginx目录

./configure --prefix=/usr/local/nginx   //安装到/usr/local目录下

澳门新金沙国际娱乐 8

1、CGI
CGI即通用网关接口(Common Gateway
Interface),它是一段程序,通俗的讲CGI就象是一座桥,把网页和WEB服务器中的执行顺序连接起来,它把HTML接收的指令传递给服务器的执
行程序,再把服务器执行顺序的结果返还给HTML页。CGI
的跨平台品质极佳,大概可以在此外操作系统上完毕。
CGI形式在蒙受延续请求(用户
请求)先要创制cgi的子进度,激活三个CGI进度,然后处理请求,处理完后终止这么些子进度。那就是fork-and-execute方式。所以用cgi
格局的服务器有些许连接请求就会有多少cgi子进度,子进程反复加载是cgi质量低下的要害原因。都会当用户请求数量特别多时,会大方占据系统的能源如内
存,CPU时间等,造成职能低下。

make && make install

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;
        }

澳门新金沙国际娱乐 9

在举行上述命令的时候本身的服务器报了一个不当:

安装成功后就OK了。

location / {

root /data/www;
index index.php index.html index.htm;
}

//PHP 脚本请求全部转发到 FastCGI处理. 使用FastCGI默认配置.

location ~ \.php$ {
root /data/www;    //这里要改
fastcgi_pass 127.0.0.1:9000;   //PHP监听端口
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /data/www$fastcgi_script_name;   //这里要改
include fastcgi_params; }

果真又是缺失devel,安装到位后再次编译,已毕后别忘记:

将script 改为$document_root即可。

 

这时候就要检查一下pcre-devel是或不是已安装了,同样输入指令:

# wget https://nginx.org/download/nginx-1.10.1.tar.gz
# tar zxf nginx-1.10.1.tar.gz
# cd nginx-1.10.1/

PCRE 库 正则需求用 nginx php

澳门新金沙国际娱乐 10

# echo $PATH

 

 找到占用80端口的软件依旧服务将其倒闭即可,之后再输入./sbin/nginx 命令,如果人品符合规律的话应该早就不乏先例运维了.

笔录下在阿里云CentOS下LNMP环境搭建进度,首先,须要设置C语言的编译环境,因为Nginx是C语言编写的。常常半数以上Linux都会暗中认同安装GCC,如果没有的话,可以如下安装。

LNMP安装先后顺序:mysql-》php-》nginx(nginx的安装顺序怎么样都不在乎)

澳门新金沙国际娱乐 11

好麻烦,好累,好坑啊!!!!

centos  LNMP第1、有个别环境搭建 LAMP安装先后顺序  LNMP安装先后顺序 php安装
安装nginx  编写nginx运转脚本   懒汉形式  mv  
/usr/local/php/{p.conf.default,p.conf}  php运维方式SAPI介绍 
第一十三节课

yum install pcre-devel
yum install gcc gcc-c++

LAMP安装先后顺序  

apache一般是把php当做自个儿的2个模块来运维的,而nginx则是把http请求变量转载给php进度,即将php当做三个独立进程与nginx举办通信,称为
fastcgi运转格局):

将mysql运营未来,起首举行部分基本音信的安装。输入设置命令:

测试  /usr/local/nginx/sbin/nginx -t
再也加载 /usr/local/nginx/sbin/nginx -s reload

编译时必要注意只怕会唤起错误,如缺少有些包,那时候像上边安装nginx一样的覆辙,比如小编赶上未找到libxml2的荒谬,直接下令:

# mysql_secure_installation

 

执行命令,果然是一贯不devel,输入y继续设置到位,完结之后再度实施安装命令:

安装g++:

 

sbin 首要放二进制程序

从那之后mysql就设置成功了。


先到PHP官网找到必要的版本将减小包下载下来,那里以php-5.6版本为例上盛传服务器/usr/local/src/目录下,进入到命令行方式,输入指令:

然后继续回车:

 

html 首要放置网页文件

# systemctl enable mysqld 

# systemctl daemon-reload

mv   /usr/local/php/etc/{php-fpm.conf.default,php-fpm.conf}

输入指令居然又提示小编早就安装了pcre库,Nothing to do…

# service nginx reload
cd /software/nginx-1.4.6 && ./configure --sbin-path=/usr/sbin/nginx \
--conf-path=/etc/nginx/nginx.conf --pid-path=/var/run/nginx/nginx.pid \
--error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log \
--user=nginx --group=nginx --with-pcre --with-http_gzip_static_module --with-http_ssl_module \
--with-http_realip_module --with-http_geoip_module --with-http_stub_status_module   \
--add-module=/usr/local/nginx_upstream_check_module-master \
--add-module=/usr/local/ngx_cache_purge-2.1   --with-http_gunzip_module \
--add-module=/usr/local/ngx_req_status-master && make -j2 && make install

logs 紧要放置日志文件 

安装mysql

直接使用yum命令下载mysql5.6来进行安装是不能成功的,安装过程会有问题,这里我们需要使用rpm命令来先进下载。
下载路径为:http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm

 

tar zxvf php-5.6.36.tar.gz   

澳门新金沙国际娱乐 12

启动nginx: 
/usr/local/nginx/sbin/nginx

澳门新金沙国际娱乐 13

澳门新金沙国际娱乐 14

 

一、在Linux系统下nginx的装置进程,先到:

澳门新金沙国际娱乐 15

nginx.conf里可以更改子进度的属主为此外,那么更改属主之后也要chown
/usr/local/nginx/上边的某个目前文件/目录的属主,否则不能读写这么些一时半刻文件/目录,私行认同是nobody
子进程:nobody 5161 0.0 0.1 24236 1380 ? S 21:02 0:00 nginx: worker
process

小心:若是您在前头已经安装了apache的话,那时候可能会报多个谬误,

配置php-fpm:

 

果不其然又是缺失devel,安装到位后再重新实施安装命令:

# source /etc/profile

 

HTTP GZIP模块须要ZLIB库,又是不够库,根据地点拾叁分套路再走两遍吧,命令:

Nginx中一旦服务器提供安全页面,就必要用到OpenSSL库。其下载地址为

f

nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)    //这是因为你的80端口已经被占用,启动nginx的时候冲突

netstat -tunlp   //查看正在运行的服务或软件

查看环境变量:

 

结果不依心像意又报了三个错:

要使改动立刻生效实施:

编译php的时候修改一下php.ini的职责,否则找不到php.ini不能运转php
./configure
–with-config-file-path=/usr/local/php/etc

相关文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图