Why is Mautic so difficult to install?

Here are my notes for how to install Mautic from many years ago before The Event - developers, please correct where this goes wrong:

The following are instructions to install Mautic (2.15.3, old version, replace with latest of course) on CentOS 6 with PHP 7.2.

I used EasyApache in WHM on my Bluehost CentOS VPS to upgrade to PHP 7.1, PHP 7.2 and PHP 7.3, then used MultiPHP Manager in WHM to set the default version to PHP 7.2 and used MultiPHP INI Editor to enable allow_url_open, increase memory_limit to 512M, max_execution_time to 300, post_max_size and upload_max_filesize to 64M

When you install or configure PHP, whatever method you use, make sure the following extensions are installed:

php-zip php-xml php-imap php-mcrypt php-mysql php-mbstring php-curl php-amqplib php-mbstring php-bcmath php-intl

The following are not strictly required, but apparently recommended:

php-opcache php-apcu php-memcached memcached memcached-devel

The first Mautic version that supports PHP 7.2 is apparently version 2.15.0. Version 2.15.1 seems to work on my server.

SSH into your server as a regular user, NOT as root. To switch from root to another user, like username, use:

su - username

Then navigate to your web root or directory where you want to install Mautic:

cd /home/username/public_html/mautic

wget https://github.com/mautic/mautic/archive/2.15.3.tar.gz

tar -zxvf 2.15.3.tar.gz -C /home/username/public_html/mautic

Check with FTP if your files are where you want them. They will be in a folder with an inconvenient name; you may have to rename the folder or/and move the files down one level.

On the command line, make sure you are in the directory where your Mautic files are, then install the dependencies:

pwd

composer install

npm install

You may have to install npm/node.js - cough, spit - on your server first:

Make sure your Mautic files are owned by Apache. First find out which user Apache is running as:

lsof -i | grep :http

On CentOS it will be either ‘apache’ or ‘nobody’. Then run something like this:

chown -R nobody:nobody /home/username/public_html/mautic

Or on CentOS 7 this seemed to work:

chown -R username:username /home/username/public_html/mautic

Opening yourdomain.com in your browser should now give you access to the installer. Follow the instructions. Everything should be OK from here on.

If you get a server error, try to run mautic as user:

chown -R username:username /home/username/public_html/mautic

Sending mailings from Mautic will not work, even if single test mails work fine, because you also have to set up cron jobs. Look for the Mautic documentation on this issue. cPanel has an interface to set up cron jobs.

Commands you may want to set up as cron jobs are the following:

php bin/console mautic:segments:update

php bin/console mautic:campaigns:rebuild --batch-limit=100

php bin/console mautic:campaigns:trigger --batch-limit=50

php bin/console mautic:emails:send

php bin/console mautic:email:fetch

php bin/console mautic:social:monitoring

php bin/console mautic:webhooks:process

php bin/console mautic:iplookup:download

php bin/console mautic:maintenance:cleanup --days-old=365 --dry-run

If you still run into problems, check the most common Mautic misconfigurations here:

Thank you I been doing everything correctly (I think) even I was checking permission for files but could you tell me why Mautic 3.x or 4.x dont have installation folder in zip file ? I been doing composer install and everything went smooth but still no luck with that installation folder any idea??

My issue can be cos i used Hestia panel as starting point ??
system Debian 10

by the way i will follow your instruction and hope it will works

thank you

With the proper editing of json.config file, we can install Mautic 4 and I am sure even upcoming 5 on cPanel. I have a 4 running on cPanel using composer install.

I did a post or reply to a post on how to do this so do a search on my username to find the post on this forum.

I plan to post a tutorial but am waiting on one issue to be eliminated before posting it.

I’m newbie here. however, it seems to me that composer makes installation very easier now. I spend some hours to understand composer. but it’s worth it. see https://github.com/mautic/recommended-project for more details.

One thing might be not easy for beginner to follow in that guide is to one has to change owner and group of the docroot and bin directory, so that the web server can read and write there. At least that’s what I did to make it work (hopefully it’s correct).