树莓派安装 nginx + php5 + sqlite3 并运行 Thinkphp / Typecho
date
Dec 10, 2019
slug
raspbian-install-web-env-and-run-php
status
Published
tags
折腾
summary
第一次接触这个基于Debian开发定制的Raspbian系统,还挺多坑的,记录一下
type
Post
最近项目赶进度,开始搭建环境,第一次接触这个基于Debian开发定制的Raspbian系统,还挺多坑的,记录一下。
更换国内源
在安装之前,首先将系统自带的源换成国内的源,不然速度感人。。
查了一圈,国内各大厂商和高校都有相应的镜像源,最终用了清华的源。在CentOS国内机器上用的也是清华的,清华的源还是很不错的,文档也全。
清华镜像Raspbian源介绍:https://mirror.tuna.tsinghua.edu.cn/help/raspbian/ 由于以下原因,Raspbian 需要单独组建软件仓库,而不能使用 Debian 的仓库: Debian下所有的软件包都需要用 armhf 重新编译。 树莓派有部分特有的软件包,例如 BCM2835 CPU 的 GPIO 底层操作库。 树莓派用户倾向于探索、尝试最新的软件。这与 Debian 软件源的策略完全不同。
根据文档的介绍,对源进行更换
# 编辑 `/etc/apt/sources.list` 文件,删除原文件所有内容,用以下内容取代:
deb <http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/> buster main non-free contrib
deb-src <http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/> buster main non-free contrib
# 编辑 `/etc/apt/sources.list.d/raspi.list` 文件,删除原文件所有内容,用以下内容取代:
deb <http://mirrors.tuna.tsinghua.edu.cn/raspberrypi/> buster main ui
编辑镜像站后,请使用
sudo apt-get update
命令,更新软件源列表,同时检查您的编辑是否正确。安装Nginx
更新源后,就可以用apt对软件进行统一的安装
sudo apt-get install nginx
执行后即可自动安装nginx,安装完成后启动
sudo /etc/init.d/nginx start
安装PHP+SQLite
这里有一个比较坑的点。网上许多的教程中使用的php5、php7在比较高的系统中已经无法安装(可能是系统不支持),所以需要安装最新版本的
sudo apt-get install php-fpm #默认安装的是php7
sudo apt-get install php7.3-sqlite3 #这里要根据上面安装的PHP版本改变,我看到装的是7.3就改成了这个
等待自动安装完成,就完成了环境的搭建
配置Nginx
这里需要对相应的nginx配置文件进行更改
首先,备份nginx的默认配置
sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/default.bak
然后,用nano进行文件的编辑
sudo nano /etc/nginx/sites-available/default
在root项里加入
index.php
默认首页的支持,再翻到下面,把PHP相关的信息的注释给删掉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;
}
最后加入伪静态的重定向
location / {
if (!-e $request_filename) {
rewrite ^(.*)$ /index.php?s=$1 last;
break;
}
}
修改后,使用
ctrl+o
保存,再用ctrl+x
退出。重新载入nginx配置
sudo /etc/init.d/nginx reload
执行后,将程序拷入root根目录(我这里是/var/www/html
)访问后成功载入。