Operational notes, install steps, required PHP modules, and recovery procedures.
Server OS: Ubuntu 24 Web server: nginx PHP: php-fpm (8.3) Wiki path: /var/www/html/amigaz/wiki
sudo apt update sudo apt install -y \ nginx \ php8.3-fpm \ php8.3-cli \ php8.3-common \ php8.3-curl \ php8.3-gd \ php8.3-mbstring \ php8.3-xml \ php8.3-zip \ php8.3-intl \ php8.3-sqlite3
Restart PHP after install:
sudo systemctl restart php8.3-fpm
DokuWiki core and common plugins require:
| Module | Purpose |
| ——– | ——– |
| mbstring | Text handling |
| xml | Parser |
| gd | Image handling |
| curl | External fetch |
| intl | Unicode support |
| zip | Plugin/theme installs |
| sqlite3 | Tagging, search, plugins |
| pdo_sqlite | SQLite database access |
Check installed modules:
php -m | egrep -i 'sqlite|mbstring|xml|gd|curl|intl|zip'
Verify PDO drivers:
php -i | grep "PDO drivers"
Expected output:
PDO drivers => sqlite
DokuWiki must be writable by the web user.
sudo chown -R www-data:www-data /var/www/html/amigaz/wiki sudo find /var/www/html/amigaz/wiki -type d -exec chmod 755 {} \; sudo find /var/www/html/amigaz/wiki -type f -exec chmod 644 {} \;
Writable directories:
data/ conf/ lib/plugins/
If plugin errors occur:
sudo chown -R www-data:www-data data conf lib/plugins
Typical PHP handler block:
location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/run/php/php8.3-fpm.sock; }
After changes:
sudo nginx -t sudo systemctl reload nginx
Error:
Exception: SQLite PDO driver not available
Fix:
sudo apt install php8.3-sqlite3 sudo systemctl restart php8.3-fpm
Verify:
php -m | grep sqlite
Check logs:
tail -f /var/log/nginx/error.log tail -f /var/www/html/amigaz/wiki/data/log/error.log
Restart PHP:
sudo systemctl restart php8.3-fpm
Symptoms:
Cause: PHP modules for the new version are missing.
Fix example (after upgrade to 8.4):
sudo apt install php8.4-fpm php8.4-sqlite3 php8.4-xml php8.4-mbstring php8.4-gd php8.4-curl php8.4-intl php8.4-zip sudo systemctl restart php8.4-fpm
Before upgrade:
cd /var/www/html/amigaz tar -czf wiki-backup.tar.gz wiki
After PHP or system upgrade:
1. Verify PHP version
php -v
2. Reinstall modules for that version
sudo apt install phpX.Y-sqlite3 phpX.Y-xml phpX.Y-mbstring phpX.Y-gd phpX.Y-curl phpX.Y-intl phpX.Y-zip
3. Restart PHP
sudo systemctl restart phpX.Y-fpm
4. Test wiki search and plugins
If the wiki is broken:
1. Check PHP-FPM status
systemctl status php8.3-fpm
2. Restart services
systemctl restart php8.3-fpm systemctl reload nginx
3. Check error logs
tail -n 50 /var/log/nginx/error.log tail -n 50 /var/www/html/amigaz/wiki/data/log/error.log
4. Verify SQLite module
php -m | grep sqlite
nginx -T systemctl restart php8.3-fpm systemctl reload nginx php -v php -m df -h