How To Install Tiki Wiki CMS Groupware on Fedora 41
In this tutorial, we will show you how to install Tiki Wiki CMS Groupware on Fedora 41. Tiki Wiki CMS Groupware is a powerful, open-source content management system that combines wiki functionality with robust collaboration tools. Installing this versatile platform on Fedora 41 provides you with a stable, secure environment to host your organization’s knowledge base, blogs, forums, and file galleries. This comprehensive guide walks you through each step of the installation process, ensuring you can successfully deploy Tiki Wiki on your Fedora 41 system with minimal hassle.
Understanding Tiki Wiki CMS Groupware
Tiki Wiki CMS Groupware (commonly referred to as Tiki) is a feature-rich, community-driven content management system written entirely in PHP. Unlike other CMS platforms that may require plugins for extended functionality, Tiki comes with a comprehensive set of integrated features right out of the box. These include wiki pages, blogs, forums, file galleries, and calendars—all unified under a consistent user interface.
As an open-source project with a vibrant community, Tiki offers several advantages for organizations and individuals:
- No licensing fees or proprietary lock-in
- Regular security updates and feature improvements
- Extensive documentation and community support
- Flexible permission system for granular access control
- Customizable themes and layouts to match your branding
Fedora 41, with its focus on cutting-edge software and security features, provides an excellent foundation for running Tiki Wiki CMS Groupware. The integration between Tiki and Fedora’s modern Linux features ensures optimal performance and security.
Prerequisites and System Requirements
Before beginning the installation process, ensure your Fedora 41 system meets the following requirements:
Hardware Requirements
For optimal Tiki Wiki performance, your system should have:
- Minimum 2GB RAM (4GB recommended for production environments)
- At least 20GB of available disk space (more for sites with extensive file uploads)
- 2+ CPU cores for better performance with multiple concurrent users
Software Prerequisites
Verify you have a standard Fedora 41 installation with:
- Root or sudo access to the server
- Internet connectivity to download packages
- Updated system packages (
sudo dnf update
)
Knowledge Prerequisites
This guide assumes you have:
- Basic familiarity with Linux command-line operations
- Understanding of web server concepts
- Basic knowledge of database management
Setting Up the LAMP Stack
Tiki Wiki requires the LAMP (Linux, Apache, MariaDB, PHP) stack to function properly. Let’s install and configure each component.
Installing Apache Web Server
Apache is the most widely used web server and works seamlessly with Tiki Wiki. Install it with the following commands:
sudo dnf install httpd -y
sudo systemctl enable httpd
sudo systemctl start httpd
Verify the Apache installation by navigating to http://your_server_ip in your web browser. You should see the default Fedora Apache test page.
Installing MariaDB Database Server
MariaDB is a robust, open-source database server that Tiki Wiki uses to store its data:
sudo dnf install mariadb mariadb-server -y
sudo systemctl enable mariadb
sudo systemctl start mariadb
sudo mysql_secure_installation
During the mysql_secure_installation
process, follow these recommended settings:
- Enter the current password for root (if this is a fresh installation, just press Enter)
- Set a strong root password when prompted
- Remove anonymous users (Y)
- Disallow root login remotely (Y)
- Remove test database and access to it (Y)
- Reload privilege tables now (Y)
Installing PHP and Required Extensions
Tiki Wiki requires PHP along with several extensions. Install them with:
sudo dnf install php php-mysqlnd php-gd php-xml php-mbstring php-json php-zip php-fileinfo php-curl php-intl php-opcache php-readline -y
Create a test PHP file to verify the installation:
echo "" | sudo tee /var/www/html/info.php
Visit http://your_server_ip/info.php in your browser to confirm PHP is working correctly. For security, remove this file after testing:
sudo rm /var/www/html/info.php
Restart Apache to apply all PHP settings:
sudo systemctl restart httpd
Configuring Firewall and SELinux
Fedora’s enhanced security features require specific configuration to work properly with web applications.
Opening Required Ports
Configure the firewall to allow HTTP and HTTPS traffic:
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload
SELinux Configuration
While you could disable SELinux for simplicity, it’s better for security to configure it properly:
# Install SELinux management tools
sudo dnf install policycoreutils-python-utils -y
# Set the correct context for the web directory
sudo semanage fcontext -a -t httpd_sys_content_t "/var/www/html/tikiwiki(/.*)?"
sudo semanage fcontext -a -t httpd_sys_rw_content_t "/var/www/html/tikiwiki/temp(/.*)?"
sudo semanage fcontext -a -t httpd_sys_rw_content_t "/var/www/html/tikiwiki/dump(/.*)?"
sudo semanage fcontext -a -t httpd_sys_rw_content_t "/var/www/html/tikiwiki/img/wiki(/.*)?"
sudo semanage fcontext -a -t httpd_sys_rw_content_t "/var/www/html/tikiwiki/img/trackers(/.*)?"
sudo semanage fcontext -a -t httpd_sys_rw_content_t "/var/www/html/tikiwiki/modules/cache(/.*)?"
sudo semanage fcontext -a -t httpd_sys_rw_content_t "/var/www/html/tikiwiki/templates_c(/.*)?"
sudo semanage fcontext -a -t httpd_sys_rw_content_t "/var/www/html/tikiwiki/files(/.*)?"
sudo semanage fcontext -a -t httpd_sys_rw_content_t "/var/www/html/tikiwiki/temp/cache(/.*)?"
These contexts will be applied after we download and extract Tiki Wiki files.
Downloading and Preparing Tiki Wiki
Now it’s time to obtain the Tiki Wiki installation files and prepare them for installation.
Obtaining Tiki Wiki Installation Files
Download the latest stable version of Tiki Wiki:
cd /tmp
wget https://sourceforge.net/projects/tikiwiki/files/latest/download --no-check-certificate -O tikiwiki.zip
Extracting the Archive
Extract the downloaded file and move it to the Apache document root:
sudo dnf install unzip -y
unzip tikiwiki.zip
sudo mv tiki-* /var/www/html/tikiwiki
Verify the extraction was successful:
ls -la /var/www/html/tikiwiki
Setting Proper File Permissions
Correct file permissions are crucial for both security and functionality.
Directory Ownership
Set Apache as the owner of the Tiki Wiki files:
sudo chown -R apache:apache /var/www/html/tikiwiki
File Access Rights
Use the built-in setup script to set appropriate permissions:
cd /var/www/html/tikiwiki
sudo chmod 755 setup.sh
sudo ./setup.sh apache apache
Apply the SELinux contexts we defined earlier:
sudo restorecon -Rv /var/www/html/tikiwiki
Creating the Database
Now let’s set up the MariaDB database for Tiki Wiki.
Setting Up MariaDB Database
Log in to MariaDB as root:
sudo mysql -u root -p
Create a database and user for Tiki Wiki (replace ‘secure_password’ with a strong password):
CREATE DATABASE tikiwiki CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'tikiwiki'@'localhost' IDENTIFIED BY 'secure_password';
GRANT ALL PRIVILEGES ON tikiwiki.* TO 'tikiwiki'@'localhost';
FLUSH PRIVILEGES;
EXIT;
Database Configuration Best Practices
For optimal performance and compatibility, edit the MariaDB configuration:
sudo nano /etc/my.cnf.d/mariadb-server.cnf
Add the following lines under the [mysqld]
section:
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
skip-character-set-client-handshake
Save the file and restart MariaDB:
sudo systemctl restart mariadb
Configuring Apache Virtual Host
Setting up a dedicated virtual host improves security and makes administration easier.
Creating a Dedicated Virtual Host
Create a virtual host configuration file:
sudo nano /etc/httpd/conf.d/tikiwiki.conf
Add the following configuration (replace example.com with your domain name):
<VirtualHost *:80>
ServerAdmin webmaster@example.com
DocumentRoot /var/www/html/tikiwiki
ServerName tiki.example.com
<Directory /var/www/html/tikiwiki>
Options FollowSymLinks
AllowOverride All
Require all granted
</Directory>
ErrorLog /var/log/httpd/tikiwiki-error.log
CustomLog /var/log/httpd/tikiwiki-access.log combined
</VirtualHost>
Enabling the Virtual Host
Check the configuration for syntax errors:
sudo apachectl configtest
If the test is successful, restart Apache:
sudo systemctl restart httpd
Implementing SSL/TLS (Optional)
For enhanced security, install Certbot to obtain a free SSL certificate:
sudo dnf install certbot python3-certbot-apache -y
sudo certbot --apache -d tiki.example.com
Follow the prompts to configure HTTPS for your Tiki Wiki installation.
Running the Web-based Installer
With all components in place, it’s time to complete the installation through the web interface.
Accessing the Installation Wizard
Open your web browser and navigate to:
http://tiki.example.com/tiki-install.php
Or if you didn’t set up a domain:
http://your_server_ip/tikiwiki/tiki-install.php
Database Connection Setup
On the installation page:
- Choose your preferred language and click “Continue”
- Accept the license agreement
- On the Database Connection page, enter:
- Database host: localhost
- Database name: tikiwiki
- Database user: tikiwiki
- Database password: [your secure password]
- Click “Install” to proceed
Admin Account Creation
When prompted, create your administrator account with a strong password. This account will have full control over your Tiki Wiki installation.
Initial Site Configuration
The installer will guide you through basic site configuration options. You can select which features to enable based on your requirements. Don’t worry about getting everything perfect—you can adjust these settings later through the administration panel.
Post-Installation Configuration
After completing the installation, there are several important steps to enhance security and performance.
Security Enhancements
Access the Admin Control Panel and implement these security measures:
- Navigate to “Admin > Security”
- Enable HTTPS-only mode if you set up SSL
- Configure password policies (minimum length, complexity requirements)
- Set up secure login options like two-factor authentication
- Configure email validation for new accounts
Performance Optimization
Optimize your Tiki Wiki installation:
- Navigate to “Admin > Performance”
- Enable caching options appropriate for your server
- Configure minification of JavaScript and CSS
- Adjust PHP memory limits if needed by editing php.ini
Troubleshooting Common Issues
If you encounter problems during or after installation, try these solutions to common issues.
Permission Problems
If you see “Permission denied” errors:
sudo chown -R apache:apache /var/www/html/tikiwiki
sudo chmod -R 755 /var/www/html/tikiwiki
sudo find /var/www/html/tikiwiki -type d -exec chmod 755 {} \;
sudo ./setup.sh apache apache
sudo restorecon -Rv /var/www/html/tikiwiki
Database Connection Issues
If you can’t connect to the database:
- Verify the database credentials in the
db/local.php
file - Ensure MariaDB is running:
sudo systemctl status mariadb
- Check if the tikiwiki user has proper permissions:
SHOW GRANTS FOR 'tikiwiki'@'localhost';
PHP Configuration Problems
If you encounter PHP-related errors:
- Verify all required PHP extensions are installed
- Check PHP error logs:
sudo tail -f /var/log/php-fpm/error.log
- Increase PHP memory limit if needed by editing
/etc/php.ini
:memory_limit = 256M
Locked Out of Tiki
If you’re locked out of the administration interface:
# Remove the installer lock to regain access
sudo rm /var/www/html/tikiwiki/db/lock
Then visit tiki-install.php
again to reset your configuration.
Updating and Maintaining Your Installation
Regular maintenance ensures your Tiki Wiki installation remains secure and performs optimally.
Regular Update Procedures
To update Tiki Wiki:
- Always back up your database and files before updating
sudo mysqldump -u root -p tikiwiki > tikiwiki_backup.sql sudo cp -r /var/www/html/tikiwiki /var/www/html/tikiwiki_backup
- Download the latest version and follow the update instructions on the official site
Scheduled Maintenance Tasks
Implement these routine maintenance procedures:
- Set up automated database optimization:
echo "mysqlcheck -o tikiwiki -u tikiwiki -p'your_password'" | sudo tee /etc/cron.weekly/optimize-tikiwiki sudo chmod 700 /etc/cron.weekly/optimize-tikiwiki
- Schedule regular backups:
echo "mysqldump tikiwiki -u tikiwiki -p'your_password' > /backup/tikiwiki_\$(date +\%Y-\%m-\%d).sql" | sudo tee /etc/cron.daily/backup-tikiwiki sudo chmod 700 /etc/cron.daily/backup-tikiwiki
Congratulations! You have successfully installed Tiki Wiki. Thanks for using this tutorial for installing the Tiki Wiki CMS on the Fedora 41 system. For additional help or useful information, we recommend you check the official Tiki Wiki website.