I like working with Docker because it is a powerful and user-friendly tool that offers many advantages. However, sometimes I have to install some type of panel on a virtual private server (VPS) for different reasons. So far, if it wasn’t Cpanel or Plesk, I used to use Hestia, which I consider the most complete free panel.
But recently I tried Cloudpanel 2.0 and I loved it. It has many advantages, such as the ability to install both Node and PHP applications, good file management, advanced security options, and most of all, it is very easy and fast to install. It also has an intuitive interface that makes it easy to use.
Here is the link to their homepage: CloudPanel
Installing Cloudpanel on a VPS is very easy. You just need to follow these steps:
Log in to the VPS
Download the Cloudpanel installation file
Run the installation command
Follow the instructions on the screen to complete the installation
The first time I tried installing CloudPanel in an Oracle Cloud instance and in less than 20 minutes I had a domain pointing to the vps IP, a control panel installed and a Wappler app written in node working perfectly.
Grabación de pantalla 2023-02-10 a la(s) 10.57.01
The only thing that it does not have, unlike Hestia, is an e-mail server, but there are many very cheap and even free mail services depending on the use, such as zoho.com or sendinblue.com.
In conclusion, Cloudpanel 2.0 is an excellent option for those looking for an easy-to-use and feature-rich panel. I highly recommend it for anyone looking for an efficient and user-friendly solution.
Note:
CloudPanel is good for NodeJS Wappler projects, but not for PHP Wappler projects because CloudPanel comes with Nginx reather than Apache as handler. So the .htaccess file will not be recognize by CloudPanel and you should to manually convert .htaccess rules to nginx rules.
I don’t see this as a negative, I’ve never used Wappler PHP but I’ve used Laravel before and was fine with nginx rules. Does Wappler not provide with nginx rules? Something in the docs hopefully
That’s right, is not negative, is about that native PHP Wappler project that use Apache as handler as default, it use .htaccess file, and CloudPanel use nginx with no support for Apache/htaccess.
Wappler use all routes inside the .htaccess, so its neccessary to convert that rules into nginx inside CloudPanel in the Vhost tab.
So, for PHP Wappler project I dont see as a good option, for Wappler NodeJS is perfect.
In the config the only handler for PHP projects that I see is Apache, there is not nginx, maybe @patrick or @George can help with this.
Well, I guess that’s how Wappler works, it modify the .htaccess file to create the routes, and Wappler PHP projects tends to works only on Apache and not NGINX as CloudPanel works.
Nginx does support URL rewriting, but it uses a different syntax than Apache’s .htaccess. The rules are typically placed in the Nginx configuration file, not in a file in the project root folder.
Here’s an example of a simple rewrite rule in Apache:
RewriteEngine On
RewriteRule ^oldpath/(.*)$ /newpath/$1 [R=301,L]
However, unlike Apache, Nginx does not read configuration files from the web directories it serves. Instead, all configuration has to be in the central Nginx configuration file (or files included by it). This means you can’t simply drop a .htaccess file equivalent into your project root.
If you need directory-level configuration, you would need to manually edit the Nginx configuration file (or files) and potentially reload the Nginx service for changes to take effect.
The htaccess file should be modified to rewrite all routes to index.php, and index.php should be the one holding information about the routes and load (include) the relevant script
This would allow existing Laravel htaccess to work with Wappler
/hello -> index.php -> hello.php
Or figure a way to make htaccess directly rewrite to hello.php without hard-coding “hello”