AlmaLinuxRHEL Based

How To Install ProjectSend on AlmaLinux 9

Install ProjectSend on AlmaLinux 9

In today’s digital landscape, efficient file sharing and management are crucial for businesses of all sizes. ProjectSend is a powerful open-source application designed to facilitate secure file sharing with clients, making it an invaluable tool for professionals. This article provides a comprehensive, step-by-step guide on installing ProjectSend on AlmaLinux 9, ensuring you have everything you need to get started.

Understanding ProjectSend

What is ProjectSend?

ProjectSend is a web-based file sharing application that allows users to upload files and share them securely with clients. It features user management, client-specific file access, and an intuitive interface that makes file management straightforward. With ProjectSend, businesses can streamline their document sharing processes while maintaining security and organization.

System Requirements

Before diving into the installation process, it’s important to ensure your system meets the necessary requirements:

  • AlmaLinux 9 operating system
  • Web server (Apache or Nginx)
  • PHP version 7.3 or higher
  • MariaDB or MySQL database server
  • PHP extensions: mysqli, gd, xml

Preparing Your AlmaLinux 9 Environment

Prerequisites

To ensure a smooth installation process, it’s essential to prepare your AlmaLinux environment. This includes updating your system and installing the necessary packages.

Updating AlmaLinux

Start by updating your system to ensure all packages are current:

sudo dnf update

Installing Required Packages

You will need to install several packages to set up a LAMP stack (Linux, Apache, MySQL/MariaDB, PHP). Execute the following command:

sudo dnf install httpd mariadb-server php php-mysqlnd php-gd php-xml unzip wget

Setting Up the Database for ProjectSend

Starting MariaDB Service

Next, start the MariaDB service and enable it to run at startup:

sudo systemctl start mariadb
sudo systemctl enable mariadb

Securing MariaDB Installation

Run the security script provided by MariaDB to enhance security settings:

sudo mysql_secure_installation

This script will prompt you for several configurations, including setting a root password and removing anonymous users. Follow the prompts to secure your installation.

Creating a Database and User for ProjectSend

You need to create a database specifically for ProjectSend along with a user who has permissions to access it. Log in to the MariaDB shell:

sudo mysql -u root -p

Create the database and user with the following commands:

CREATE DATABASE projectsend;
CREATE USER 'projectsenduser'@'localhost' IDENTIFIED BY 'your_password';
GRANT ALL PRIVILEGES ON projectsend.* TO 'projectsenduser'@'localhost';
FLUSH PRIVILEGES;

Downloading and Installing ProjectSend

Downloading ProjectSend

The next step is to download the latest version of ProjectSend. Use the following command:

wget https://github.com/ignacionelson/ProjectSend/archive/master.zip

Extracting the Files

Once downloaded, unzip the files and move them to your web directory:

unzip master.zip -d /var/www/html/projectsend
sudo mv /var/www/html/projectsend/ProjectSend-master/* /var/www/html/projectsend/

Configuring ProjectSend

You will need to configure ProjectSend by renaming the configuration file and entering your database details. Navigate to the ProjectSend directory:

cd /var/www/html/projectsend/config
cp sys.config.php.example sys.config.php
nano sys.config.php

Edit the database settings in `sys.config.php` as follows:

'db_host' => 'localhost',
'db_user' => 'projectsenduser',
'db_pass' => 'your_password',
'db_name' => 'projectsend',

Configuring Apache for ProjectSend

Creating Apache Virtual Host File

Create a new virtual host configuration file for ProjectSend:

sudo nano /etc/httpd/conf.d/projectsend.conf

Setting Up Virtual Host Configuration

Add the following configuration settings to your virtual host file:

<VirtualHost *:80>
    ServerAdmin admin@example.com
    DocumentRoot /var/www/html/projectsend
    ServerName projectsend.example.com

    <Directory /var/www/html/projectsend>
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
    </Directory>

    ErrorLog /var/log/httpd/projectsend-error.log
    CustomLog /var/log/httpd/projectsend-access.log combined
</VirtualHost>

Enabling Rewrite Module and Restarting Apache

If you’re using Apache, ensure that mod_rewrite is enabled. Then restart Apache for changes to take effect:

sudo dnf install mod_rewrite
sudo systemctl restart httpd

Finalizing Installation via Web Interface

Accessing the Web Interface

You can now access ProjectSend through your web browser by navigating to `http://your-server-ip/projectsend`. If you set up a domain name, use that instead.

Install ProjectSend on AlmaLinux 9

Completing Installation Steps

The web installer will guide you through final setup steps. You’ll need to fill in details such as site name and admin credentials. Follow the prompts carefully.

Troubleshooting Common Issues

Common Errors During Installation

If you encounter issues during installation, here are some common problems and their solutions:

    • Error establishing a database connection: This usually indicates incorrect database credentials in `sys.config.php`. Double-check your username, password, and database name.
    • No write permissions: If you see errors related to permissions, ensure that Apache has write permissions on the ProjectSend directory:
sudo chown -R apache:apache /var/www/html/projectsend
sudo chmod -R 755 /var/www/html/projectsend
  • Error 404 or 403: This may occur if your virtual host configuration is incorrect or if mod_rewrite is not enabled. Verify your configuration settings.
  • PHP errors: If you encounter PHP-related errors, check if all required PHP extensions are installed. You can install missing extensions using DNF.

Congratulations! You have successfully installed ProjectSend. Thanks for using this tutorial for installing ProjectSend open-source self-hosted file-sharing on AlmaLinux 9 system. For additional help or useful information, we recommend you check the official ProjectSend website.

VPS Manage Service Offer
If you don’t have time to do all of this stuff, or if this is not your area of expertise, we offer a service to do “VPS Manage Service Offer”, starting from $10 (Paypal payment). Please contact us to get the best deal!

r00t

r00t is an experienced Linux enthusiast and technical writer with a passion for open-source software. With years of hands-on experience in various Linux distributions, r00t has developed a deep understanding of the Linux ecosystem and its powerful tools. He holds certifications in SCE and has contributed to several open-source projects. r00t is dedicated to sharing her knowledge and expertise through well-researched and informative articles, helping others navigate the world of Linux with confidence.
Back to top button