General
What is WordOps ?
WordOps is a command line tool which eases server administration by providing the ability to setup an optimized LEMP stack (Nginx, PHP, MySQL) and to deploy WordPress sites with simple commands. It also come with a web dashboard where the main server metrics are displayed with links to all other tools shipped with WordOps.
What are WordOps main features ?
WordOps not only installs and configures the packages needed to deploy a site (Nginx, PHP, MariaDB) but it also takes care of creating Nginx vhosts and the database, installing WordPress and even get a Let’s Encrypt SSL certificate, all in one command line.
It support multiple cache backend for WordPress, with or without additional plugin, including Nginx fastcgi_cache and Redis cache (full-page cache with Nginx + object cache with Redis-cache plugin), WP-Super-Cache, Cache-Enabler and WP-Rocket.
It’s based on a highly optimized Nginx configurations and an hardened security with strict location directives.
Which operating systems are supported by WordOps ?
WordOps can be installed on :
- Ubuntu LTS (Long Term Service) releases (16.04 & 18.04 & 20.04)
- Debian 9 (stretch)
- Debian 10 (buster)
- Raspbian 9 (stretch)
- Raspbian 10 (buster)
Support for other linux distribution isn’t planned.
Is there a project roadmap ?
Yes, you can take a look on the Github project to see what features are going to be implemented in WordOps and the current tasks progression
How do I report a bug I found in WordOps ?
If you feel the issue is specific to WordOps, please open an issue on the github repository to allow us to add automatically the task into our issues tracker.
Otherwise, if you have a question about WordOps usage, or if you need support, please use the community forum.
How to contribute to WordOps ?
Please read our contributor guide available in our documentation :
https://docs.wordops.net/about/contributing/
Technical
Which version of PHP does WordOps support ?
WordOps support PHP 7.2 (default), PHP 7.3 and PHP 7.4.
How to access to WordOps Dashboard ?
WordOps dashboard is available on https://YOUR.SERVER.IP:22222
or https://YOUR.SERVER.HOSTNAME:22222
What is the user/password of the web filemanager eXtplorer ?
By default, user is admin and password is also admin. After you logged in for the first time, you will have to change this password
Why do I get warning from my web browser when opening WordOps backend ?
During Nginx installation, WordOps secure his back-end with a self-signed SSL certificate. But WordOps will automatically replace this self-signed certificate with the first Let’s Encrypt SSL certificate issued on the server. So if you want to access WordOps back-end without receiving warning about the certificate, just create a site secured with a Let’s Encrypt SSL certificate, and use this domain to access to the back-end.
Additional information are available in the documentation.
Does Nginx package shipped with WordOps support TLSv1.3 ?
Yes, since the release v3.9.5.4, our custom Nginx package is built with OpenSSL 1.1.1c and is available on all Linux distributions supported by WordOps : Ubuntu 16.04/18.04/19.04, Debian 8/9/10 & Raspbian 9/10.
Is WordOps Let's Encrypt stack compatible with Cloudflare CDN
WordOps Let’s Encrypt stack is fully compatible with Cloudflare CDN, and you can use Cloudflare DNS API to issue your certificates even if the domain is not pointed to your server IP.
How to uninstall WordOps ?
If you need/want to uninstall WordOps, you can use the following commands :
make a backup of your databases before purging stacks
1) Purge WordOps stacks (nginx, mysql, php etc..)
wo stack purge --all
2) Uninstall WordOps
wget -qO wo wops.cc && sudo bash wo --purge
What is the MySQL root password ?
You can find the MySQL root password in /etc/mysql/conf.d/my.cnf
How can I enable/disable gzip or brotli ?
Enable Brotli
mv /etc/nginx/conf.d/brotli.conf.disabled /etc/nginx/conf.d/brotli.conf
Disable Gzip
mv /etc/nginx/conf.d/gzip.conf /etc/nginx/conf.d/gzip.conf.disabled
Restart Nginx to apply changes
wo stack restart --nginx
I have customized some Nginx configuration. Will WordOps upgrade overwrite them ?
Since the release v3.9.8, to make sure all WordOps users will always use the latest release available, WordOps do not force Nginx configuration update when running wo update
anymore. So you can safely upgrade to the latest WordOps release without impacting your sites.
Then to update Nginx templates, you can use the command wo stack upgrade --nginx
.
And it’s still possible to customize Nginx configurations, and to keep them after updating templates.
To disable configuration update on a file, you just have to create an empty file with the same name and the extension .custom
For example, if you want to customize the file /etc/nginx/conf.d/fastcgi.conf
, you just have to create an empty file /etc/nginx/conf.d/fastcgi.conf.custom
. This can be done with the command :
touch /etc/nginx/conf.d/fastcgi.conf.custom
If WordOps detect a .custom file, it will create another file with the .orig extension. This way, you will be able to update manually your custom configurations.
How to apply new stack optimization available in the latest release ?
After upgrading WordOps to the latest release, you can apply new stack optimizations with wo stack upgrade
To upgrade Nginx and to apply new Nginx templates :
wo stack upgrade --nginx
To apply MariaDB configuration tuning :
wo stack upgrade --mysql
To apply latest PHP-FPM pool configuration
wo stack upgrade --php
How to increase upload maximum file size ?
You can increase file upload size by editing the variable upload_max_filesize
in /etc/php/7.2/fpm/php.ini
or /etc/php/7.3/fpm/php.ini
depending on the PHP version in use.
You will also have to edit the directive client_max_body_size
in /etc/nginx/nginx.conf
.
WordPress
What is the best caching solution for WordPress ?
There is no “best solution”, because there are benefits/disadvantage for each caching solution and it depend on your usage. Here some informations :
Cache backend | command argument | description |
---|---|---|
fastcgi_cache | --wpfc | the simplest solution, because it do not rely on any plugin excepted nginx_helper used to purge cache after content updates |
redis-cache | --wpredis | powerful solution which support multi-server setup and it provide full-page cache in redis via Nginx + object-cache via Redis-Object-Cache plugin (optional) |
wp-super-cache | --wpsc | basic solution based on a plugin which create and serve static html files. |
wp-rocket | --wprocket | solution based on a popular premium plugin with several additional features, compatible with Woocommerce and the most part of plugins |
cache-enabler | --wpce | solution based on an open-source plugin from keycdn |
How to change WordPress admin password ?
You can update WordPress admin password with the following command :
wo site update site.tld --password
Does WordOps support WP-Rocket ?
Yes, since the release v3.9.8, WordOps support WP-Rocket with an optimized configuration to provide the best performances for your site. Because WP-Rocket is a paid plugin, we are not able to install it and to configure it during WordPress installation. So you will have to download it from the official site and to install it manually.
Software
What SSH client is recommended by WordOps ?
If there is no need to install an additional SSH client on Linux, on Windows we recommend MobaXterm because it include all features required to manage remote linux servers via SSH and there is a free version available