前言
Alpine Linux 占用很小,功能丰富,可谓是麻雀虽小五脏俱全,已有博主 32MB 内存实现建站,见 32 MiB Site - 20231210。看到本文时,说明网站已建设并成功运行。在阅读本文前,建议您提前检索以下关键字:
- apline,alpine apk,alpine rc-service
- vi,vi 用法
安装 Nginx + PHP + SQLite3
apk update
apk add nginx php php-fpm sqlite3
如果想安装一些 PHP 扩展,使用命令 apk search php
查找,默认情况下,apk 安装扩展之后会自动添加到配置文件中。
如果想知道 PHP 加载了哪些扩展,使用命令 php -m
查看。
配置运行用户 www
为服务配置一个运行用户很重要,很多博主没说这一步,不配置运行用户很有可能导致日后博客程序提示权限不足……。Linux 上的权限管理比 Windows 要严格许多,但是不算复杂,如果了解更多,建议搜索关键词「Linux 权限」「如果使用 chmod chown 命令」。
本文使用 www 用户运行 Nginx 和 PHP-FPM。于是,新建用户 www,并将 nginx 文件夹所有权赋给 www,默认是 nginx 用户:
adduser -D -g "www" www
chown -R www:www /var/lib/nginx
通过修改配置文件将 Nginx 和 PHP-FPM 运行用户设置为 www:
- 修改 Nginx 配置文件
/etc/nginx/nginx.conf
的user
项为www
- 修改 PHP-FPM 配置文件
/etc/php81/php-fpm.d/www.conf
的user
和group
项为www
如果找不到 php-fpm 配置文件,请将配置地址中 php81 改成你安装的版本。
如果想了解其他 Linux 发行版如果新建用户,检索关键字「Linux 新建用户」。
配置网站信息
在 /etc/nginx/http.d/
目录下新建 {文件名}.conf
配置文件,可以参考下面的配置文件。
server {
listen 443 ssl http2;
ssl_certificate_key {SSL PRIVATE KEY};
ssl_certificate {SSL CERTIFICATE};
#如需 Authenticated Origin Pulls
#ssl_client_certificate {Cloudflare Certificate};
#ssl_verify_client on;
root {网站目录,目录可被 www 用户掌控};
index index.html index.htm index.php;
server_name {网站名称};
#如需 开启地址重写
if (!-e $request_filename) {
rewrite ^(.*)$ /index.php$1 last;
}
location ~ .*\.php(\/.*)*$ {
include fastcgi.conf;
fastcgi_pass 127.0.0.1:9000;
}
}
如果想要了解其他配置方法,建议搜索关键词「Nginx 配置文件」。
启动 Nginx 和 PHP-FPM 服务
rc-service nginx start
rc-service php-fpm81 start
如果找不到 php-fpm81,使用 service -l
命令查看 php-fpm 服务名称。
如果想要重启后自动运行某服务,使用 rc-update add {服务名称} default
命令。
如果修改了配置文件,使用 rc-service {服务名称} restart
命令重启服务,Nginx 支持热加载 nginx -s reload
。
安装 Typecho 博客
如果想避免网站提示权限不足等错误,建议通过命令 su www
切换到 www 用户操作网站文件夹和文件。
如果安装程序或使用过程报错,可能是部分 PHP 扩展没有安装,请根据错误提示依次检索关键字,建议提前安装常用 PHP 扩展。
如果不知道如果安装 Typecho,建议检索关键字「Typecho 如何安装」、「如果解压 Linux 文件」。