Debian11部署typecho1.2.1基于PHP8.1+SQlite3插件+Nginx
一、安装PHP8.1和插件
1、安装php8.1
sudo apt update
sudo apt-get install ca-certificates apt-transport-https software-properties-common -y
echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/sury-php.list
wget -qO - https://packages.sury.org/php/apt.gpg | sudo apt-key add -
sudo apt-get update -y
sudo apt-get install php8.1-fpm -y
2、安装php插件
apt-get install php8.1-mbstring
apt -y install php8.1-sqlite3
启动php systemctl start php8.1-fpm
二、Nginx配置
fastcgi_pass
后的内容应当和上述/etc/php/8.1/fpm/pool.d/www.conf
中listen
项一致!(如果 listen 后面是
xxxxx.sock
, 那么绝对路径前应加unix:
,如果是127.0.0.1:9000
,那么就什么也不加直接写成相同的地址)
server {
listen 443; # 如果不用https就写80
server_name blog.xxx.cn;
root /var/www/html/; # 这里是网站的存放路径
index index.php;
# 如果用https配置这里
ssl on;
ssl_certificate /etc/nginx/ssl/blog.xxx.cn.crt;
ssl_certificate_key /etc/nginx/ssl/blog.xxx.cn.key;
# 下面直接照写
location / {
try_files $uri $uri/ /index.php$is_args$args;
}
location ~ \.php$ {
include fastcgi.conf;
include fastcgi_params;
fastcgi_pass unix:/run/php/php8.1-fpm.sock;
}
}
三、安装过程中的问题
Q1:typecho上传目录无法写入, 请手动将安装目录下的 /usr/uploads 目录的权限设置为可写然后继续升级
A:将安装目录的/usr/uploads设置为可读写
Q2:安装出现No input file specified. 的问题
/etc/php/8.1/fpm/php.ini设置cgi.fix_pathinfo=1
本作品采用 知识共享署名-相同方式共享 4.0 国际许可协议 进行许可。