WordPress使用php服务器和sqlite数据库快速部署

25 阅读1分钟

无需nginx/httpd或者mysql, 仅需php,快速开发验证。

本地部署多实例无需担心数据库或者服务器配置冲突。

仅用于快速部署测试,勿用于生产环境。

这里使用www-data作为wordpress的部署目录用户名。(方便放常用的服务器软件的目录内)

需要考虑php命令的执行者是否具有对应的权限。

需要考虑数据库文件的安全问题。

使用的 route.php 可以参考这篇文章 cloud.tencent.com/developer/a…

使用了一个环境变量MYSITEDIR, 可以改写它为本地的任意目录

export MYSITEDIR=/var/www/html 

sudo apt-get install php php-sqlite3 php-gd php-xml php-mbstring php-opcache php-common
cd /tmp 
wget https://wordpress.org/latest.tar.gz 
tar -xzvf latest.tar.gz 
sudo mv wordpress $MYSITEDIR/ 

cd $MYSITEDIR/wordpress 
sudo cp wp-config-sample.php wp-config.php

cd /tmp 
wget https://github.com/WordPress/sqlite-database-integration/archive/refs/tags/v2.2.15.tar.gz #也可以使用其他版本
tar -xvf v2.2.15.tar.gz # 注意不能留版本号, 因为插件代码里强依赖无版本号的目录名 
sudo mv sqlite-database-integration-2.2.15 sqlite-database-integration 
sudo cp -r sqlite-database-integration $MYSITEDIR/wordpress/wp-content/plugins/ 
sudo cp sqlite-database-integration/db.copy $MYSITEDIR/wordpress/wp-content/db.php
sudo chown -R www-data:www-data $MYSITEDIR/wordpress 
sudo chmod -R 755 $MYSITEDIR/wordpress 

注意修改 wp-config.php 内可以直接全部清空

define('DB_NAME', ''); 
define('DB_USER', ''); 
define('DB_PASSWORD', ''); 
define('DB_HOST', ''); 
define('DB_CHARSET', 'utf8'); 
define('DB_COLLATE', '');

然后运行 php -S 0.0.0.0:9000 -t $MYSITEDIR/wordpress -c php.ini route.php

访问 localhost:9000 开始安装

安装完成后访问 https://127.0.0.1:9000/wp-admin 输入账号密码进入后台