Server Requirements
PHP
Unfold CMS requires PHP 8.2 or higher.
PHP Extensions
The following extensions are required. Most of these are installed by default with PHP:
- Ctype
- cURL
- DOM
- Fileinfo
- GD
- JSON
- Mbstring
- OpenSSL
- PDO
- Tokenizer
- XML
- BCMath
Database
One of the following databases:
| Database | Minimum Version |
|---|---|
| MySQL | 8.0+ |
| MariaDB | 10.3+ |
| PostgreSQL | 13+ |
| SQLite | 3.35+ |
You need the corresponding PDO driver installed (pdo_mysql, pdo_pgsql, or pdo_sqlite).
Web Server
Unfold CMS works with any web server that supports PHP:
- Apache with
mod_rewriteenabled - Nginx
- LiteSpeed
Nginx
If you are deploying on a server running Nginx, use the following configuration file as a starting point. Adjust the server_name and root values for your setup:
server {
listen 80;
listen [::]:80;
server_name example.com;
root /srv/example.com/public;
add_header X-Frame-Options "SAMEORIGIN";
add_header X-Content-Type-Options "nosniff";
index index.php;
charset utf-8;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location = /favicon.ico { access_log off; log_not_found off; }
location = /robots.txt { access_log off; log_not_found off; }
error_page 404 /index.php;
location ~ ^/index\.php(/|$) {
fastcgi_pass unix:/var/run/php/php8.3-fpm.sock;
fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
include fastcgi_params;
fastcgi_hide_header X-Powered-By;
}
location ~ /\.(?!well-known).* {
deny all;
}
}
Important: The
rootdirective must point to thepublicdirectory, not the project root. Adjust thefastcgi_passsocket path to match your PHP version.
Related
- Installation — Step-by-step installation guide
- Shared Hosting — Deployment on shared hosting
- Configuration — System configuration