A lot of website owners get used to cPanel when managing sites. One of the challenges of moving to a self-managed VPS like Digital Ocean or Vultr is finding a graphical interface to manage your server. For managing sites I use Webmin (installation guide for Ubuntu and Debian). I use nginx for all my WordPress sites so I wanted a way to manage the virtual hosts and easily disable and enable separate sites.
I found Justin Hoffman’s nginx Webmin module and it came very close to suiting my needs. There were some features that I wanted to add so I contacted Justin and sponsored these new features so everyone using nginx (including EasyEngine users) can enjoy them :).
New Webmin nginx module features added
- Ability to disable and enable virtual hosts
- Display the domain name in the column
- Display the document root
- Allow an easy way to access the URL of the virtual host
- Feedback to Apply changes
Here is how the new and improved nginx Webmin module looks now after Justin and I worked on it.
Install nginx Webmin Module
Go download the nginx.tar.gz file from Justin’s download page
Log into Webmin and in the left pane navigate to Webmin > Webmin Configuration
Click Webmin Modules
Select From uploaded file and then click Choose File and browse to the nginx-0.11.wbm.gz file.
Click Install Module
You may need to restart Webmin for the NginX webserver menu item to show up under Servers.
sudo service webmin restart
Now if you click NginX webserver it will take you to the module screen
Using nginx Webmin Module
The nginx Webmin module shows the existing virtual hosts.
The Status column shows if the virtual host is currently enabled or not.
The Server Name column shows the virtual host name, clicking will open up the nginx virtual host for editing.
The Document Root shows the root folder of the virtual host
The URL column provides a hyperlink to open the website in a new tab.
To disable or enable a virtual host you can check the box under Select Servers and use the Select action dropdown.
Then click Update Servers and then click Apply Changes.
You can use the Global Configuration tab to modify the /etc/nginx/nginx.conf
file.
In the Create Virtual Host tab you can create new virtual hosts.