You can self-host DokuWiki on an Ubuntu VPS without MySQL or PostgreSQL. DokuWiki stores wiki pages, media, search indexes, revisions, and configuration in files; Nginx serves those files and passes PHP requests to PHP-FPM.
Antihost offers Linux VPS plans with full root access, unlimited traffic on a 1 Gbps port and a 14-day free trial.
The reliable deployment sequence is: prepare DNS and Ubuntu, install Nginx and a PHP-FPM version supported by the current DokuWiki release, unpack the stable tarball, grant the PHP-FPM account write access only where DokuWiki needs it, configure Nginx to protect private directories, complete install.php, enable ACLs, enforce HTTPS, and maintain off-server backups of the file tree.
As an Amazon Associate I earn from qualifying purchases.
Quick wins for a faster PC:
Fix the driver behind crashes, sound loss and screen glitchesFind Drivers →Clear out junk files and repair common Windows errorsFree Scan →Scan for outdated or missing drivers - takes under a minuteDriver Scan →What this deployment looks like
A native installation has three runtime pieces:
- Nginx accepts HTTP and HTTPS connections, serves CSS, JavaScript, images and other static files, and applies URL and access rules.
- PHP-FPM executes DokuWiki’s PHP entry points through a Unix socket whose name depends on the PHP version installed on Ubuntu.
- DokuWiki’s file tree contains pages, media, indexes, old revisions, cache, configuration and extension data. A basic deployment therefore has no database server to install or migrate.
The installer documentation describes DokuWiki as using ordinary files for pages and associated information such as images, search indexes and old revisions. That design simplifies a small VPS deployment, but it makes filesystem permissions and complete file backups critical.
Decide what you need before installing
Hostname and DNS
Choose the name readers will use, such as wiki.example.com, and create an A or AAAA record pointing to the VPS. Use the final hostname when you run the installer; changing it later can require configuration and certificate changes.
#1 Best Overall
- [Ultra-Lightweight Ear Buds Designed for Small Ears] Each earbud weighs only 3.7g and features a compact, ergonomic in-ear design made especially for small ears. Secure, low-profile, and comfortable for workouts, all-day wear or overnight sleeping.The ultra-slim profile sits flush in your ear with no hard edges poking or rubbing, so you can even sleep on your side without discomfort.
- [Immersive Stereo Sound with TOZO OrigX Technology] TOZO OrigX tuning delivers clear vocals, balanced mids, and natural stereo sound for music, podcasts, and videos.
- [Long Battery Life for Daily Use] Get up to 7 hours of playtime on a single charge, with up to 32 hours total using the charging case—ideal for workdays, commuting, and extended listening sessions.
- [Bluetooth 5.3 & Stable Connection] Bluetooth 5.3 provides fast pairing, stable wireless performance, and reduced dropouts as you move around home or office.
- [Deep Bass with Clear Vocals] High-performance drivers produce punchy bass while keeping vocals clean and detailed for everyday listening.
Supported Ubuntu and PHP versions
Package names, PHP versions and required PHP extensions change as Ubuntu and DokuWiki releases change. Check the current DokuWiki requirements before running the package command. Install a PHP-FPM release supported by that DokuWiki version rather than assuming the version shown in an older tutorial.
Network access
Allow TCP 80 for the initial HTTP endpoint and certificate validation, and TCP 443 for normal HTTPS traffic. Restrict SSH to your administration network where your VPS provider’s firewall permits it. Do not expose PHP-FPM’s Unix socket or any database port; this installation does not need a database port.
VPS capacity
No authoritative capacity benchmark establishes a universal CPU, memory or storage minimum for every wiki. Size the VPS for the number of editors, media volume, search activity and backup retention you expect, then monitor memory, disk space and PHP-FPM errors after launch.
Prepare Ubuntu
- Log in with an administrative account. Use an account that can run
sudo; avoid operating the web application as root. - Update the operating system.
sudo apt update sudo apt upgradeReboot if Ubuntu reports that a kernel or core service requires it.
- Install Nginx and PHP-FPM. The exact extension package names depend on the supported PHP version. A typical current Ubuntu installation uses packages in this form; compare the list with the DokuWiki requirements first:
sudo apt install nginx php-fpm php-cli php-xml php-gd php-curl php-zip php-mbstringIf the release requires an additional extension, install its matching Ubuntu package before opening the installer.
- Start and enable services.
sudo systemctl enable --now nginx sudo systemctl enable --now php8.3-fpmReplace
php8.3-fpmwith the service name installed on your VPS. Confirm it withsystemctl list-units --type=service | grep fpm. - Open the web ports. If UFW is enabled, allow SSH using your existing policy and allow the Nginx HTTP/HTTPS profile:
sudo ufw allow 'Nginx Full' sudo ufw statusUse your VPS provider’s network firewall as well; both layers must permit 80 and 443.
Download and unpack DokuWiki
Download the stable DokuWiki tarball from the project’s official download channel. Do not use an old tutorial’s release URL or an obsolete package: the stable release and its PHP requirements change over time. Transfer the archive to the VPS as dokuwiki-stable.tgz (or note the actual filename), and inspect the archive before extraction.
sudo mkdir -p /var/www
tar -tzf dokuwiki-stable.tgz | head
sudo tar -xzf dokuwiki-stable.tgz -C /var/www
sudo mv /var/www/dokuwiki-* /var/www/dokuwiki
rm dokuwiki-stable.tgz
If the archive extracts to a directory already named dokuwiki, omit the mv command. The final document root used below is /var/www/dokuwiki. Keep the archive’s release notes and checksum information with your deployment records when the download channel provides them.
Rank #2
- 【IP68 Waterproof Multifunctinal Smart Watch】Torjalph fitness activity tracker smart watch is IP68 waterproof technology ,you can wear it when swimming,handwashing,it's rain-proof which means that you perform multiple exercise modes outside without worrying about sweat or rain corroding your fitness smart watch,and this watch equipped with a 230 mAh large capacity battery magnetic charging ,and this sports activity tracker watch can be used 5-7 days If fully charged.
- 【Larger 1.83'' Full Screen Watch & Multi-dial Selection】1.83 inch full HD color touch screen smart watch for men / women provides excellent 240*284 resolution image quality ,This Bluetooth smart watch offers a better touch experience and remarkable immersion and ,more than 200 watch faces for you to choose from App"Da Fit ", you can change the dial style according to your mood to wear keeping the world on your wrist
- 【Accurate Activity Tracker Smart Watch 】sports watch activity tracker uses sweat and dust resistant breathable silicone strap, our Fitness Tracker Smart Watch for Android iOS Phones supports 12 sports modes,walking,running,bicycle,swimming,badminton,basketball,football,rope skipping. This bluetooth calls smart watch for men women is lightweight and stylish, bringing more convenient and relaxing sports experience while also providing more protection.
- 【Your 24 Hour Personal Daily Health Monitor】Fitness watch for women men full touch screen IP67 waterproof bluetooth smartwatch for Android iOS Phones with heart rate blood pressure monitor multifunction Andriod smart watch with steps counter sleep monitor sports fitness watch, monitoring blood oxygen saturation allows you to understand your physical condition in real time to track fitness progress ,to know your health status in time.
- 【More Functions Bluetooth Call Smart Watch】This fitness activity smart watch full screen for iPhone and Android phones includes a bunch of new features including:The bluetooth smart watch can hang up the phone, receive and display WhatsAPP /Text /Facebook /Twitter /Messenger reminder.Support sedentary reminder, alarm clock, stopwatch, timer,weather information,music control, remote camera control compatible with Android 5.0 and above or iOS 9.0 and above smartphones.
Set ownership and least-privilege permissions
The PHP-FPM worker must be able to write the directories DokuWiki uses for pages, media, indexes, revisions, cache and installer-created configuration. The service account varies by Ubuntu package and PHP-FPM pool, so identify it instead of blindly copying an account name from another distribution.
ps -eo user,group,comm,args | grep '[p]hp-fpm'
grep -E '^(user|group)s*=' /etc/php/*/fpm/pool.d/www.conf
On many Ubuntu installations the account is www-data. Substitute the account shown by your system:
sudo chown -R www-data:www-data /var/www/dokuwiki
sudo find /var/www/dokuwiki -type d -exec chmod 0755 {} ;
sudo find /var/www/dokuwiki -type f -exec chmod 0644 {} ;
This broad ownership assignment is simple for a single-site VPS, but it gives the web account ownership of the application tree. A tighter arrangement can keep immutable core files owned by root while granting the FPM account write access to DokuWiki’s data and configuration paths required by the installed release. Whatever model you choose, do not make the entire VPS, /var, or unrelated directories writable.
Before running the installer, verify that the account can write the relevant DokuWiki directories. After setup, review permissions again and remove write access from any path the current release does not need. Never solve a permission error with chmod -R 777.
Configure Nginx and PHP-FPM
Create a dedicated server block. The example below assumes the document root and hostname above, uses a PHP-FPM socket, hides DokuWiki’s private directories, rejects hidden files, and serves only existing PHP scripts. Adjust the socket path to the PHP-FPM version installed on your VPS.
The Tool Desk
Outbyte Driver Updater FREEScan for outdated or missing drivers - takes under a minuteDriver Scan →Outbyte PC Repair FREEClear out junk files and repair common Windows errorsFree Scan →Rank #3
- [Low Noise High Fidelity] New bee guitar cord with 22AWG oxygen-free-copper center conductors provides enhanced signal transfer, the PVC insulation material and the high-density stranded copper double shield provide noise rejection for quiet operation
- [Ideal for Choice] New bee 1/4 straight and right angle metal connectors, ensures a secure connection in any instrument, pedal, or amp jack. L shape great fro on stage guitar stands
- [Wide Compatible] Suitable for mixer, power amplifier, microphone, effector, decoder, equalizer, electoronic organ, electric guitar, electric bass and other electronic equipments. Widely used in the installation of smart home, karaoke speaker, professional stage audio, etc
- [Easy Disassemble] Making incidental repairs quick and easy! Very nice, flexible cable
- [Dont Hesite to Order] 24 hours customer services and professional technology team are standing by
sudo nano /etc/nginx/sites-available/dokuwiki
server {
listen 80;
listen [::]:80;
server_name wiki.example.com;
root /var/www/dokuwiki;
index doku.php;
# Keep private DokuWiki directories out of the web.
location ~ ^/(conf|data|bin|inc)(/|$) {
deny all;
return 404;
}
# Do not expose hidden files such as .htaccess or repository metadata.
location ~ /. {
deny all;
return 404;
}
# Remove or disable this exact location after the installer completes.
location = /install.php {
include snippets/fastcgi-php.conf;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_pass unix:/run/php/php8.3-fpm.sock;
}
# Execute only PHP files that exist below the document root.
location ~ .php$ {
try_files $uri =404;
include snippets/fastcgi-php.conf;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_pass unix:/run/php/php8.3-fpm.sock;
}
location / {
try_files $uri $uri/ /doku.php?$args;
}
}
Replace wiki.example.com and every php8.3 component with your values. The distribution’s snippets/fastcgi-php.conf may already set SCRIPT_FILENAME; an explicit value is shown so the document-root mapping is clear. If your package supplies a different include path, use the PHP-FPM example shipped with that Ubuntu release.
Enable the site and validate the syntax before reloading:
sudo ln -s /etc/nginx/sites-available/dokuwiki /etc/nginx/sites-enabled/dokuwiki
sudo nginx -t
sudo systemctl reload nginx
Disable the default site if it claims the same address:
sudo rm -f /etc/nginx/sites-enabled/default
sudo nginx -t
sudo systemctl reload nginx
The PHP rule above is intentionally conservative: a request is passed to PHP only when the target script exists. DokuWiki also has executable helpers under lib/exe and uses rewrite rules for optional friendly URLs. Start with the default URL mode and confirm that login, media display and uploads work. Add the rewrite rules from the current DokuWiki Nginx guidance only after testing them against your installed release; do not copy rules from an older PHP or DokuWiki version without checking their paths.
Free tools Windows power users keep installed
One-click scans. No signup required.
Run the installer in the browser
- Visit
http://wiki.example.com/install.phpwhile the HTTP server block is active. If DNS has not propagated, test with a temporary hosts-file entry from your workstation rather than changing the production hostname. - Choose the administrator account and a strong, unique password. Store recovery information in your password manager.
- Set the wiki name and license requested by the installer.
- Enable ACLs. ACL setup enables administrator login and the administration menu for users, permissions, plugins and configuration.
- Submit the form and confirm that DokuWiki writes its configuration and data files without a permission error.
Do not leave the installer reachable after setup. Remove it or make the exact Nginx location return 404:
Rank #4
- Digital Family Calendar: BSIMB digital calendar wall touch screen puts an end to your chaotic life. Designed for busy families, the digital calendar keeps you organised and in step with your family. Assign different colours and tasks to each family member to make family scheduling easier and more intuitive.
- Easy Setup and Auto-Sync: Plug in, connect to WLAN and auto-syn your electric calendar in minutes. Digital wall calendar compatible with Google calendar, iCloud calendar, Outlook calendar, Cozi calendar and Yahoo calendar. Add events directly on the device or through the ecalendar app. Electronic calendar stays current whether you're at work or traveling—no manual updates needed.
- All-In-One Home Assistant: Smart calendar builds habits and encourage independence with personalised chores. Display daily meal plan to reduce the daily ‘What's for dinner?’ stress. To-do lists keep track of everything you want. Turning chores into valuable achievements with stars and rewards, making life easier and more enjoyable.
- Manage Anytime Anywhere: BSIMB electronic calendar for family stay connected with the powerful ecalendar app. Access and manage your digital wall calendar anytime, anywhere with free features like stars & rewards, photo screensaver, chore charts, meals plans, to-do lists etc. Electronic planner paid features like Magic Import tailor advanced tools for users with special needs.
- Stay in Touch with Loved Ones: Share photos or videos from your phone to electronic wall calendar with app, instantly update your life moment, and keep in touch with your family, especially those who are far away; you can also surprise your smart calendar digital wall by sending him a wish card; it's also great for keeping tech-illiterate elders in touch with the youngsters.
sudo rm -f /var/www/dokuwiki/install.php
If you retain the file for a controlled recovery procedure, replace the temporary FastCGI location with:
location = /install.php { return 404; }
Reload Nginx and request /install.php directly. A 404 is the expected result.
Recommended Free Tools
Define ACLs and user access
ACLs determine who may read, edit, create or administer content. Plan permissions by namespace instead of giving every registered user global administrator rights.
- Anonymous users: choose whether the wiki is public, read-only, or completely inaccessible.
- Registered users: grant only the namespaces and actions needed for collaboration.
- Administrators: reserve full control for a small, trusted group.
The ACL manager lets you apply rules to namespaces and pages. Test the effective permission with separate anonymous, ordinary-user and administrator sessions. A browser’s cached login can hide an ACL mistake, so use a private window or log out between tests.
Enable friendly URLs only after the basic site works
DokuWiki can use rewritten, slash-style URLs instead of query-string URLs. In the configuration, userewrite and useslash must match the Nginx rewrite behavior. Changing the flags without corresponding server rules can produce 404 responses, broken media links or redirect loops.
Best Value
- Leave rewriting disabled while validating the installer, login, page creation and media upload.
- Back up
conf/and record the current configuration values. - Enable one rewrite option at a time in DokuWiki’s configuration.
- Add and test the matching Nginx rules from the current DokuWiki documentation for your release.
- Run
sudo nginx -t, reload Nginx, and test an existing page, a new page, a media file and an administration URL.
Put the wiki behind HTTPS
Use a valid certificate for the final hostname and redirect every HTTP request to HTTPS. The certificate can be issued by an ACME-compatible client appropriate to your environment; the exact command depends on the client and Ubuntu release.
Use two server blocks: the port-80 block should perform a permanent redirect, and the port-443 block should contain the DokuWiki root, PHP handler and private-path protections. A minimal redirect block is:
server {
listen 80;
listen [::]:80;
server_name wiki.example.com;
return 301 https://$host$request_uri;
}
In the TLS server block, reference the certificate and private-key files supplied by your certificate client, keep the same root, PHP-FPM socket and denial rules, and add security headers appropriate to your tested configuration. At minimum, confirm that the certificate hostname matches, renewal is scheduled, and an HTTP request receives a redirect rather than serving wiki content.
Do not expose conf/, data/, bin/ or inc/ over either protocol. Test direct requests such as /data/ and a known file beneath /conf/; they should return 404 or another deliberate denial response, never a directory listing or file contents.
Verify the finished deployment
- Open the HTTPS hostname and confirm the certificate is valid and the HTTP-to-HTTPS redirect works.
- Log in as an administrator and open the administration menu.
- Create and edit a test page, then inspect that a revision is available.
- Upload a small image and insert it into a page.
- Test an anonymous request, an ordinary registered account and an administrator account against the ACL rules you intended.
- Request
/install.php,/conf/,/data/,/bin/and/inc/; none should disclose content. - Check Nginx and PHP-FPM logs after each test. Typical locations are
/var/log/nginx/and the PHP-FPM journal; use the service’s configured paths if they differ.
Common failures and fixes
| Symptom | Likely cause | What to check |
|---|---|---|
| 502 Bad Gateway | PHP-FPM is stopped or the socket path is wrong. | Run systemctl status php*-fpm, list /run/php/, and make fastcgi_pass match the actual socket. |
| 403 or 404 for every page | The server block is not selected, the root is wrong, or a denial rule matches too broadly. | Run nginx -T, confirm the hostname and document root, then inspect the matching location blocks. |
| Installer reports unwritable directories | The PHP-FPM account cannot write DokuWiki data or configuration paths. | Confirm the pool’s user and group, inspect ownership with ls -ld, and grant only the required write access. |
| PHP source code downloads or appears as text | Nginx is not passing PHP to FPM. | Check that the PHP location is loaded, the socket exists, and Nginx was reloaded after nginx -t. |
| Media uploads fail | ACLs deny the action, the data/media path is not writable, or upload limits are too low. | Test the user’s media permission, inspect PHP-FPM errors and verify the current DokuWiki and PHP upload requirements. |
| Friendly URLs return 404 | userewrite/useslash settings do not match Nginx rewrites. |
Return temporarily to the default URL mode, then add the current release’s rewrite rules one at a time. |
| Private files are visible | The denial locations are missing, overridden or tested on a different server block. | Run nginx -T, request the paths over HTTPS, and verify the response is a denial rather than a file listing. |
Back up and update a file-based wiki
Because DokuWiki’s content is in files, a usable backup must include the complete application data that contains your pages, media, revisions, indexes and configuration. At minimum, protect data/, conf/ and media; retaining the matching core and extension versions makes restoration safer.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
- Take an off-server copy on a schedule that matches how much editing you can afford to lose.
- Keep multiple generations and protect them from deletion by the VPS account.
- Test restoring to a separate directory or disposable VPS. A backup that has never been restored is unverified.
- Record the Ubuntu, PHP, DokuWiki and plugin versions alongside each backup.
Keep DokuWiki core and extensions current. Upstream maintainers recommend the latest release for security updates; distribution maintainers may backport fixes, so check both the DokuWiki release information and your Ubuntu package status. Apply updates during a maintenance window, back up first, review release notes, then test login, ACLs, page rendering and media.
Native Nginx installation versus other deployment models
A native install exposes Nginx, PHP-FPM and the filesystem directly. Containers and managed VPS products can change who owns updates, TLS, backups and recovery. The official DokuWiki container documentation describes a reverse-proxy arrangement in which the proxy handles SSL termination and authentication and a persistent /storage volume is writable by the runtime user.
| Concern | Native Nginx/PHP-FPM | Container deployment | Managed VPS |
|---|---|---|---|
| Updates | You schedule Ubuntu, PHP, DokuWiki and extension updates. | You update the image and persistent data while retaining proxy configuration. | Provider involvement varies; responsibilities must be confirmed in the service contract. |
| Backups | Back up the DokuWiki directory and Nginx/PHP configuration off-server. | Back up the persistent storage volume and proxy configuration. | Backup scope and restore time are provider-dependent and not stated universally. |
| TLS termination | Nginx on the VPS terminates HTTPS. | A reverse proxy commonly terminates HTTPS before forwarding to the container. | The provider may offer termination, but the exact arrangement is not universal. |
| Filesystem permissions | You choose the FPM account and writeable paths. | The persistent volume must be writable by the container runtime user. | Provider controls may limit filesystem-level choices. |
| Plugin compatibility | Plugins run against the PHP and DokuWiki versions you install. | Plugins still depend on the image’s PHP/DokuWiki versions and writable storage. | Check the supplied PHP version and extension policy before committing. |
| Observability and recovery | Inspect Nginx, PHP-FPM and system logs directly; recovery is under your control. | Inspect proxy, container and host logs; recovery depends on image and volume procedures. | Monitoring and recovery tooling varies by provider. |
For a single Ubuntu VPS where you want direct control over Nginx rules, PHP-FPM and backups, the native layout is straightforward. Choose another model only when its update, storage, TLS and recovery responsibilities are explicit.
Quick Recap
Operational checklist
- DNS points the wiki hostname to the VPS.
- Ubuntu, Nginx, PHP-FPM and required extensions match the current DokuWiki requirements.
- The PHP-FPM account has only the DokuWiki write access it needs.
- Nginx protects
conf/,data/,bin/,inc/and hidden files. install.phpis removed or returns 404 after setup.- ACLs have been tested with each intended user class.
- HTTP redirects to HTTPS and certificate renewal is monitored.
- Core and extensions are updated from trusted release channels.
- Off-server backups include DokuWiki data and configuration, and a restore has been tested.
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.
Do these 3 things before closing this tab:
1Clear out junk files and repair common Windows errors2Scan for outdated or missing drivers - takes under a minute3Repair Windows errors before they cause bigger problems

