lnmp ubuntu mysql装不上_ubuntu系统下安装LNMP集成环境的详细步骤

favicon.ico摘要:php开发中集成环境的安装是必不可少的技能,而LNMP代表的是:Linux系统下Nginx+MySQL+PHP这种网站服务器架构。

php开发中集成环境的安装是必不可少的技能,而LNMP代表的是:Linux系统下Nginx+MySQL+PHP这种网站服务器架构。今天就给大家分享下LNMP的安装步骤。

1、Nginx安装

在安装Nginx前先执行下更新命令:sudo apt-get update

接下来开始安装Nginx,执行命令后遇到提示选择 ‘y’;sudo apt-get install nginx

20190527_1558962451456458.jpg

安装执行完成后可以打开浏览器输入:http://localhost/ 检验下是否安装成功,出现如下提示代表安装成功。

20190527_1558962582798380.jpg

2、php安装

LNMP中的php包含两部分,php以及php-fpm(PHP FastCGI 进程管理器,用于管理PHP 进程池,用于接受web服务器的请求),php和php-fpm的版本要一致sudo apt-get install [php版本号]

比如选择安装php7.2,安装命令:sudo apt-get install php7.2 php7.2-fmp

20190527_1558964664845578.jpg

3、配置修改

nginx、php、php-fpm都安装好后接下来还需要配置,然后才能在nginx中执行php程序。

①修改 /etc/nginx/sites-available/default 配置文件,修改该文件需要用root权限,这个文件的修改内容截图红色框内所示。sudo vim /etc/nginx/sites-available/defaultserver {

listen 80 default_server;

listen [::]:80 default_server;

# SSL configuration

#

# listen 443 ssl default_server;

# listen [::]:443 ssl default_server;

#

# Note: You should disable gzip for SSL traffic.

# See: https://bugs.debian.org/773332

#

# Read up on ssl_ciphers to ensure a secure configuration.

# See: https://bugs.debian.org/765782

#

# Self signed certs generated by the ssl-cert package

# Don't use them in a production server!

#

# include snippets/snakeoil.conf;

root /var/www/html/;

# Add index.php to the list if you are using PHP

index index.html index.htm index.nginx-debian.html;

server_name _;

location / {

# First attempt to serve request as file, then

# as directory, then fall back to displaying a 404.

try_files $uri $uri/ =404;

}

# pass PHP scripts to FastCGI server

#

location ~ \.php$ {

#include snippets/fastcgi-php.conf;

#

## With php-fpm (or other unix sockets):

#fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;

## With php-cgi (or other tcp sockets):

#fastcgi_pass 127.0.0.1:9000;

fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;

fastcgi_split_path_info ^(.+\.php)(/.*)$;

include fastcgi_params;

fastcgi_index index.php;

}

# deny access to .htaccess files, if Apache's document root

# concurs with nginx's one

#

#location ~ /\.ht {

#deny all;

#}

}

20190527_1558965151959859.jpg

②修改www.conf配置文件:

/etc/php/7.2/fpm/pool.d/www.confsudo vim /etc/php/7.2/fpm/pool.d/www.conf

把listen = /run/php/php7.2-fpm.sock

注释掉,在后面加一行:listen = /var/run/php/php7.2-fpm.sock

20190527_1558965587855373.jpg

③修改php.ini配置文件:sudo vim /etc/php/7.2/fpm/php.ini

把 /etc/php/7.2/fpm/php.ini 文件中的 cgi .fix_pathinfo=1 注释去掉,并改为 cgi .fix_pathinfo=0

20190527_1558966347532928.jpg

④修改fastcgi_params配置文件sudo vim /etc/nginx/fastcgi_params

在fastcgi_params文件最后加入一行代码:(最后的‘;’不要掉了),fastcgi_param  SCRIPT_FILENAME $document_root$fastcgi_script_name;

不加的话执行php程序时页面显示一片空白

20190527_1558966378274979.jpg

4、nginx、php集成检验

在根目录下新建一个test.phpsudo vim /var/www/html/test.php

在test.php中输入如下代码:<?php

echo phpinfo();

然后在浏览器中访问 http://localhost/test.php  如果显示界面如下,则nginx、php集成成功

20190527_1558966574131526.jpg

5、mysql安装:

在linux中安装的php默认是没有安装mysql扩展的,需要我们自己安装,因此这里我们在安装mysql是把php的mysql扩展也一起安装了:sudo apt-get install mysql-server mysql-client php7.2-mysql

执行此命令后会同时安装最新的mysql和php7.2的mysql扩展,如果安装过程中没有提示设置mysql的登录用户名和密码,可以参考《ubuntu安装mysql5.7 没有提示输入密码的解决方法》这篇文章修改mysql的密码。

6、用pdo来检验mysql在php中是否可用:

在根目录下创建一个mysql.php文件,在文件中输入如下代码:<?php

try{

$pdo = new PDO('mysql:host=localhost;dbName=mysql;','root','root');

var_dump($pdo);

}catch(Exception $e){

echo $e->getMessage();

}

然后在浏览器中访问:http://localhost/mysql.php

如果页面打印出了pdo对象,则表示mysql在php中是可用的。

20190527_1558967289899077.jpg

到此,LNMP集成环境搭建完毕。

【注意事项】

1、先安装Nginx然后再安装php,否者在安装php是自动安装apache。

2、配置文件的修改需要root权限,所以不要忘了加sudo。

3、如果发现哪一步安装错了,可用通过 sudo apt-get autoremove [软件名] 卸载,然后重新安装。

4、如果访问 http://localhost 时提示403 ,找下这个文件的位置:index.nginx-debian.html 是否与下ngingx配置文件配置的根目录一致。

5、出现502或页面空白,请仔细对第三步的配置修改,看看哪里漏了或者改错了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值