树莓派安装 PHP 环境 LNMP

安装 PHP7.3

万事先更新

树莓派安装 PHP 环境 LNMP
sudo apt-get update

安装 php7.3

sudo apt install -y -t buster php7.3-fpm php7.3-curl php7.3-gd php7.3-intl php7.3-mbstring php7.3-mysql php7.3-imap php7.3-opcache php7.3-sqlite3 php7.3-xml php7.3-xmlrpc php7.3-zip

查看版本号确定是否成功

php -v

显示如下就成功了

pi@raspberrypi:~ $ php -v
PHP 7.3.4-2 (cli) (built: Apr 13 2019 19:05:48) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.3.4, Copyright (c) 1998-2018 Zend Technologies
with Zend OPcache v7.3.4-2, Copyright (c) 1999-2018, by Zend Technologies

查看 php.ini 配置文件位置

pi@raspberrypi:~ $ php -i|grep "Loaded Configuration File"
Loaded Configuration File => /etc/php/7.3/cli/php.ini

输出显示配置文件在 /etc/php/7.3/cli/php.ini。注意,实际上配置文件有两个,另外一个在 /etc/php/7.3/fpm/php.ini。通过命令行调用 php 时,会使用第一个配置文件;通过 fpm 调用 php(例如 nginx)会使用第二个配置文件。

php-fpm 常用管理命令: 开启 php-fpm: sudo systemctl start php7.3-fpm 关闭 php-fpm: sudo systemctl stop php7.3-fpm 重启 php-fpm: sudo systemctl restart php7.3-fpm 编辑 php-fpm 配置文件: vi /etc/php/7.3/fpm/php-fpm.ini

安装 Nginx

安装 nginx:

sudo apt-get install nginx

安装完成后,会自动开启 nginx。在浏览器输入树莓派的 IP 地址,可以看到“Welcome to nginx!”。 或者使用命令行(输出 HTML 就 ok 了):

curl 127.0.0.1

默认的网站根目录:/var/www/html nginx 配置文件目录:/etc/nginx/ nginx 主配置文件位置:/etc/nginx/nginx.conf

nginx 常用管理命令: 

启动 nginx: sudo systemctl start nginx 

关闭 nginx:sudo systemctl stop nginx 

设置 nginx 开机启动:sudo systemctl enable nginx

取消开机自启动:sudo systemctl disable nginx

配置 nginx 解析 php

编辑配置 nginx 文件 (此文件为 ln 的链接文件,也可直接编辑原始文件):

sudo nano /etc/nginx/sites-enabled/default

找到 index 指令,添加 index.php。修改后:

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

找到 # pass PHP scripts to FastCGI server 后面的 location,删除注释。修改后如下:

location ~ \.php$ {
include snippets/fastcgi-php.conf;
#
# # With php-fpm (or other unix sockets):
fastcgi_pass unix:/run/php/php7.3-fpm.sock;
# # With php-cgi (or other tcp sockets):
#fastcgi_pass 127.0.0.1:9000;
}

保存后重启 nginx:

sudo systemctl restart nginx

ps: 图方便的话可以把配置文件中 /var/www/html/ 路径改成 /home/pi/www/html ,然后再在 pi 文件夹里建相应文件夹,重启 nginx,如果安装的树莓派系统为桌面版,可直接右键 html 文件夹属性把“更改内容”属性设置为“任何人”以让你可以在桌面系统更方便操作 web 文件

测试 Nginx+PHP

新建 index.php 文件

sudo nano /var/www/html/index.php

编辑输入

<?php
phpinfo();

访问树莓派 IP 地址显示 phpInfo 页面就 ok 了

Nginx 启动问题

启动 nginx 服务时如果遇到这个错误 Job for nginx.service failed because the control process exited with error code. See “systemctl stat 可能原因如下: 1.nginx 配置文件有错误

运行下面命令查看修改

nginx -t

之前配置解析 php 时始终不能成功,只因为 default 文件最后一行缺少一个“}”

2. 已经启动 nginx 或者配置文件中的端口号被占用,检查端口是否被占用

netstat -tnlp

如果端口已经被占用,自己权衡一下是换个端口还是把占用端口的进程杀掉,检查 nginx 是否已经启动

ps -aux | grep nginx

如果已经启动使用下面命令干掉即可

pkill -9 nginx

安装 MySQL

这里使用的是 MySql 分支 mariadb:

sudo apt-get install mariadb-server mariadb-client

执行数据库初始化安装

sudo mysql_secure_installation

根据提示设置数据库 root 用户密码、是否允许外网访问等。

尝试登录数据库:

mysql -u root -p

输入上一步设置的密码,发现无法登录,错误提示如下:

ERROR 1698 (28000): Access denied for user ‘root’@’localhost’

原因: 数据库默认使用系统用户登录,需要修改为使用密码登录。 解决方案: sudo mysql -u root ,登入数据库后,依次执行以下 SQL:

use mysql # 切换到 mysql 数据库
update user set plugin='mysql_native_password'; # 修改 plugin 字段
flush privileges; # 刷新权限
exit; # 退出数据库 

再次使用 mysql -u root - p 即可通过密码登录数据库,无需 root 权限执行。

mariadb 配置文件保存在多个位置: /etc/mysql/mariadb.cnf /etc/mysql/mariadb.conf.d/ /etc/mysql/conf.d/

mariadb 常用命令: 启动 mariadb: sudo systemctl start mariadb 关闭 mariadb:systemctl stop mariadb 设置 mariadb 开机启动:sudo systemctl enable mariadb

操作 MySQL

sudo /etc/init.d/mysql restart
# mysql 的其他操作     status、start、stop、restart

开启远程访问

允许远程访问

$ sudo nano /etc/mysql/mariadb.conf.d/50-server.cnf
#  将 bind-address 这行注释掉
#  或者将 127.0.0.1  这个值改为   0.0.0.0
#  然后重启
$ sudo /etc/init.d/mysql restart

设置账户权限(注意下边 root 密码改为你自己设置的密码)

$ mysql -u root -p
$  输入密码
MariaDB [(none)]> use mysql;
MariaDB [mysql]> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root 的密码 ' WITH GRANT OPTION;
MariaDB [mysql]> flush privileges;

然后用 Navicat 或 DBeaver 新建 MariaDB 或 MySQL 连接即可

参考:

https://blog.csdn.net/jdyanghang/article/details/102782780

https://www.jianshu.com/p/b258c5e2335b

目录
  • 安装 PHP7.3
  • 安装 Nginx
  • 配置 nginx 解析 php
  • 测试 Nginx+PHP
    • Nginx 启动问题
  • 安装 MySQL
    • 操作 MySQL
    • 开启远程访问
  • 目录
  • 安装 PHP7.3
  • 安装 Nginx
  • 配置 nginx 解析 php
  • 测试 Nginx+PHP
    • Nginx 启动问题
  • 安装 MySQL
    • 操作 MySQL
    • 开启远程访问
  • 手机扫描二维码访问

    本文标题:《树莓派安装 PHP 环境 LNMP》作者:极四维博客
    原文链接:https://cway.top/post/677.html
    特别注明外均为原创,转载请注明。

    分享到微信

    扫描二维码

    可在微信查看或分享至朋友圈。

    相关文章

    发表评论:

    ◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

    «    2024年10月    »
    123456
    78910111213
    14151617181920
    21222324252627
    28293031

    搜索

    控制面板

    您好,欢迎到访网站!
      查看权限

    最新留言

    文章归档

    • 订阅本站的 RSS 2.0 新闻聚合