Skip to main content
Version: V2

Hosting the control panel website separately

Requirements​

If you want to host the control panel website on a separate server without requiring an additional license you will need:

  • Remote desktop or SSH access to the web server
  • TCAdmin 2.0.152.1 or greater
  • TCAdmin configured with a MySQL database
  • Low latency from MySQL to the web server

Limitations​

  • When you update TCAdmin the seperate control panel needs to be updated manually
  • Some modules might not be compatible
  • Built in DDoS protection for the control panel is not available

Configure the master to accept connections from the web server​

  • The master should already be configured and have a working control panel.
  • Go to Server Management (on the left-hand navigation) > Servers > Master > Server IPs. Add the web server's IP but disable game and voice servers on it.

Installation of the website on Linux​

  • Install Mono and TCAdmin as you would normally. You don't need to run the configuration utility to enter a license.
  • Download the Hosting.zip, extract and edit with notepad or your favorite text editor.
tip

We recommend Visual Studio Code for all configuration edits that need to be made.

  • Update the value of TCAdmin.ConfigUtility.Database.ConnectionString with the information required to make the connection to the MySQL server.
  • Save your updated Hosting.config to your web server in the path /home/tcadmin/Monitor/Hosting.config
  • Restart the web server's monitor:
/home/tcadmin/Monitor/monitor-service restart
  • After restarting the monitor you should be able to log in to the control panel and test the connection to the master in Server Management (on the left-hand navigation) > Servers > Show Versions.
  • After the control panel is working correctly you can configure the control panel website to run with Nginx for improved performance.

Installation of the website on Windows​

  • Install TCAdmin as you would normally. You don't need to run the configuration utility to enter a license.
  • Download the Hosting.zip, extract and edit with notepad or your favorite text editor.
tip

We recommend Visual Studio Code for all configuration edits that need to be made.

  • Update the value of TCAdmin.ConfigUtility.Database.ConnectionString with the information required to make the connection to the MySQL server.
  • Save your updated Hosting.config to your web server in the path C:\Program Files\TCAdmin2\Monitor\Hosting.config
  • On the web server go to Start > Services and restart the TCAdmin Monitor service.
  • After restarting the monitor you should be able to log in to the control panel and test the connection to the master in Server Management (on the left-hand navigation) > Servers > Show Versions.
  • After the control panel is working correctly you can configure the control panel website to run with IIS for improved performance.

Disable the master's control panel​

Execute this command on your database if you want to disable the master's built in web server.

DELETE FROM tc_server_enabled_components WHERE module_id = '07405876-e8c2-4b24-a774-4ef57f596384' AND component_id = 2 AND server_id = 1;

Enable the master's control panel (optional)​

If you ever need to enable the built in web server again execute this command.

INSERT INTO tc_server_enabled_components (module_id, component_id, server_id) values ('07405876-e8c2-4b24-a774-4ef57f596384', 2, 1);

Common Errors​

If you encounter a "wrong username or password" error when trying to log in to the new separate control panel, please check the following:

  • Copy the files from the master's TCAdmin2\ControlPanel.MVC\bin-extensions directory to the same directory on the new server.
  • Copy the files from the master's TCAdmin2\Monitor\Shared\bin-extensions directory to the same directory on the new server.

You should then be able to now login to the control panel.