Tip of the day: If you still have users on plaintext port 6667, consider enabling Strict Transport Security to gently move users to SSL/TLS on port 6697.

UnrealIRCd webpanel:PHP8 Installation instructions

From UnrealIRCd documentation wiki
Jump to navigation Jump to search

The UnrealIRCd webpanel requires PHP 8. Installing PHP 8 may require special installation instructions:

Ubuntu

Ubuntu 22.04

Ubuntu 22.04 ships with PHP8, so simply run: apt-get install apache2 libapache2-mod-php

Sometimes it happens that multiple versions of PHP are installed. The webpanel will then give you an error page saying you are not using PHP8. This can happen that the CLI version of PHP may be on PHP8 but the Apache module uses PHP7.4. You can fix this by running a2dismod to disable the old PHP version (eg: php7.4) and a2enmod to enable the new PHP version. (eg: php8.2). Restart apache.

Ubuntu 20.04

Ubuntu 20.04 does not include PHP8 but you can use an external repository for installing PHP8, see: https://linuxhint.com/install-php-ubuntu/

Sometimes it happens that multiple versions of PHP are installed. The webpanel will then give you an error page saying you are not using PHP8. This can happen that the CLI version of PHP may be on PHP8 but the Apache module uses PHP7.4. You can fix this by running a2dismod to disable the old PHP version (eg: php7.4) and a2enmod to enable the new PHP version. (eg: php8.2). Restart apache.

Debian

Depending on your Debian version:

If you already had an older PHP on the machine, then after installing PHP8 you may now have multiple PHP versions on the machine.
You have to tell Apache to use PHP8:

  • Run a2dismod to disable the old PHP version (eg: php7.4)
  • Then run a2enmod to enable the new PHP version. (eg: php8.2)
  • Restart apache.

CentOS

https://www.tecmint.com/install-php-8-on-centos/

FreeBSD (13.2 - 14.0)

PHP 8.2 packages are available on FreeBSD binary repository.

By default, FreeBSD base system only includes the su command for elevating privileges, but you can install security/doas or security/sudo (if you prefer) from FreeBSD repository to do this as well.

Remember that to use su, your user must be included in the wheel group: pw group mod wheel -m your_unix_user

Therefore, run all the commands below as root, or precede the commands with doas or sudo.

  • First of all, update the local catalogue of the package repository: pkg update && pkg upgrade
  • After that, install PHP 8 with required plugins to use UnrealIRCd webpanel: pkg install lang/php82 lang/php82-extensions ftp/php82-curl archivers/php82-zip

With Apache

  • Install Apache and PHP 8 Apache module: pkg install www/apache24 www/mod_php82
  • Create the file /usr/local/etc/apache24/modules.d/001_mod-php.conf with the content:
<FilesMatch "\.php$">
    SetHandler application/x-httpd-php
</FilesMatch>
<FilesMatch "\.phps$">
    SetHandler application/x-httpd-php-source
</FilesMatch>
  • Enable Apache service: service apache24 enable
  • Start Apache service: service apache24 start

Other

For installation methods for PHP 8 on other OS's or Linux distro's, make a websearch for how to install PHP 8 on your operating system.