
In this article, I’ll share our experience tackling two challenging issues on a server running CyberPanel and OpenLiteSpeed: slow WordPress admin panels and the inaccessibility of the OpenLiteSpeed WebAdmin interface on port 7080. This case study is designed to help server administrators, web developers, and WordPress site owners facing similar problems. We’ll walk through the entire process—from diagnosis to optimization—complete with all commands, explanations, and takeaways.
On a server with CyberPanel, hosted on Digital Ocean (a droplet with 1 GB RAM and 8 CPUs), I noticed the following:
http://[SERVER_IP]:7080 wouldn’t open in the browser.lsphp), an average load (load average) exceeding 10 with 8 CPUs, and swap memory heavily utilized (400 MB out of 981 MB).The domain [olddomain.com], previously used for WebAdmin, had been removed, and its Let’s Encrypt certificates had expired (since June 2022), causing issues with HTTPS access.
The first issue was that the OpenLiteSpeed WebAdmin at http://[SERVER_IP]:7080 wasn’t accessible. I started with some basic checks.
I ran the following command to see if port 7080 was listening:
ss -tuln | grep 7080
Result:
udp UNCONN 0 0 0.0.0.0:7080 0.0.0.0:* tcp LISTEN 0 4096 0.0.0.0:7080 0.0.0.0:*
The port was listening, meaning OpenLiteSpeed should theoretically be responding.
curl from the ServerI ran:
curl -v http://[SERVER_IP]:7080
Result:
* Connected to [SERVER_IP] ([SERVER_IP]) port 7080 (#0) > GET / HTTP/1.1 > Host: [SERVER_IP]:7080 < HTTP/1.1 302 Found < location: /login.php < server: LiteSpeed
The WebAdmin was working and redirecting to /login.php, which is expected behavior. However, the page still wouldn’t load in the browser.
I noticed that the WebAdmin configuration file (/usr/local/lsws/admin/conf/admin_config.conf) had secure 1, forcing the server to redirect HTTP requests to HTTPS. But since the certificates for [olddomain.com] were expired, HTTPS (https://[SERVER_IP]:7080) wasn’t working.
I attempted to change secure 1 to secure 0 to disable HTTPS:
sed -i 's/secure 1/secure 0/' /usr/local/lsws/admin/conf/admin_config.conf systemctl restart lsws
This didn’t work immediately due to a syntax issue with the sed command (e.g., extra spaces in the line). I manually edited the file:
nano /usr/local/lsws/admin/conf/admin_config.conf
I changed secure 1 to secure 0 and restarted OpenLiteSpeed:
systemctl restart lsws
After disabling HTTPS, I ran curl again from the server, and the WebAdmin responded correctly. However, from my local computer (Mac), the page still wouldn’t load:
curl -v http://[SERVER_IP]:7080 * connect to [SERVER_IP] port 7080 failed: Operation timed out
This pointed to an issue with external access. I checked the ufw firewall:
ufw status
Result: Status: inactive. I enabled ufw and added a rule:
ufw enable ufw allow 7080/tcp ufw allow 22/tcp # To avoid losing SSH access ufw reload
But this didn’t help. I realized the issue might lie with the CyberPanel firewall.
CyberPanel has its own firewall that overrides ufw. I logged into CyberPanel (https://[SERVER_IP]:8090), navigated to Security > Firewall, and added a rule:
I clicked Reload, and after that, the page http://[SERVER_IP]:7080 finally opened in the browser!
With WebAdmin access restored, I moved on to the slow WordPress admin panels. I ran the top command to assess the server load:
top - 02:14:51 up 50 min, 2 users, load average: 10.74, 9.72, 7.32
Tasks: 156 total, 17 running, 139 sleeping, 0 stopped, 0 zombie
%Cpu(s): 6.6 us, 24.3 sy, 67.1 ni, 0.0 id, 0.0 wa, 0.0 hi, 2.0 si, 0.0 st
MiB Mem : 1971.5 total, 136.0 free, 1178.2 used, 657.4 buff/cache
MiB Swap: 981.0 total, 580.2 free, 400.8 used. 208.1 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
766 mysql 20 0 1249868 185152 7184 S 6.0 9.2 2:31.40 mysqld
5113 user1 21 1 288064 169700 104132 R 5.3 8.4 0:02.95 lsphp
5125 user1 21 1 277740 158344 103012 R 5.3 7.8 0:02.44 lsphp
5152 user2 21 1 348492 155904 104484 R 5.3 7.7 0:01.27 lsphp
lsphp processes, each using 5–8% CPU and 7–8% memory.I logged into the OpenLiteSpeed WebAdmin (http://[SERVER_IP]:7080) and reviewed the PHP settings:
PHP_LSAPI_CHILDREN=10LSAPI_AVOID_FORK=200MPHP_LSAPI_CHILDREN=8
LSAPI_AVOID_FORK=300M
I created a phpinfo.php file to check the OPcache status:
/home/[example.com]/public_html:echo '<?php phpinfo();' > phpinfo.php
Initially, I encountered an error:
Parse error: syntax error, unexpected '' > phpinfo.php' (T_ENCAPSED_AND_WHITESPACE), expecting end of file in /home/[example.com]/public_html/phpinfo.php on line 1
This was due to extra characters in the file. I edited the file using Sublime Text (via FileZilla), leaving only:
<?php phpinfo();
After that, the page https://[example.com]/phpinfo.php loaded, and I saw:
opcache.enable = On.I optimized the OPcache settings in the file /usr/local/lsws/lsphp74/etc/php.ini:
[opcache] opcache.memory_consumption=128 opcache.interned_strings_buffer=8 opcache.max_accelerated_files=4000 opcache.revalidate_freq=60 opcache.file_cache_consistency_checks=0
Restarted OpenLiteSpeed:
systemctl restart lsws
I logged into the WordPress admin panel (https://[example.com]/wp-admin) and configured the LiteSpeed Cache plugin:
After optimization, the page http://[SERVER_IP]:7080 became inaccessible again. I ran curl from the server:
* Connected to [SERVER_IP] ([SERVER_IP]) port 7080 (#0) > GET / HTTP/1.1 < HTTP/1.1 302 Found < location: /login.php
The WebAdmin was working, but I couldn’t access it from my local computer. I rechecked the CyberPanel Firewall, iptables, ufw, and Digital Ocean Firewall. It turned out that after a reboot, CyberPanel had reset the rules. I added port 7080 again and ensured it stayed allowed.
http://[SERVER_IP]:7080 was restored after reconfiguring the CyberPanel Firewall.curl and port status with ss.ufw but also the built-in firewall.lsphp processes via PHP_LSAPI_CHILDREN (8 for 8 CPUs).I hope this case study helps you solve similar issues! If you have questions, feel free to leave a comment on. 😊