Pimcore Installation Best Practices - Sintraconsulting/pimcore-product-sync-plugin GitHub Wiki

Pimcore Installation Best Practices

Pimcore is a PHP-Based solution that implements the concept of Product Information Management (PIM). Pimcore architecture is object-oriented and built above the Symfony framework.

Source Code Download

Pimcore is an Open-Source project available on GitHub. You can download the last stable version on the Pimcore download page.

Please note that, because of his Open-Source nature, some functionalities may vary in time; be sure to install the same version on your development, test and production servers to avoid unexpected mismatch errors.

System Requirements

Pimcore require a PHP >= 7.0 (recommended, 7.1) version and a MySql >= 5.6 version. You can check all requirements on System Requirements Documentation Page.

You can easily check if your server respect all requirements during the installation phase.

Installation of Pimcore

The following instruction are based on the Pimcore Installation Guidelines page and related links.

Once you have download the source code zip, you can unzip on your project root folder, let’s say for example:

Windows Installation

C:\xampp\htdocs\pimcore

In substitution to download and unzip, you can also Install via Composer.

Create Database

Create a MySql database for the project. You will need to insert schema information later in order to complete Pimcore installation procedure.

Server Configuration

In this guide, we will see how to configure Apache server for Pimcore installation. Let’s see an example for a xampp installation:

In order to make Pimcore work, you need to devine a virtual host. On the virtual hosts configuration file (for example: C:\xampp\apache\conf\extra\httpd-vhosts.conf) define a new host like:

<VirtualHost *:9080>
    DocumentRoot "C:/xampp/htdocs/pimcore/web"
    ServerName pimcore.local
	<Directory "C:/xampp/htdocs/pimcore/web">
		DirectoryIndex index.php
		AllowOverride All
		Order allow,deny
		Allow from all
	</Directory>
</VirtualHost>

The DocumentRoot and Directory values are made of two parts:

  • C:/xampp/htdocs/pimcore - Variable part. The folder in which you have unzipped the source code.
  • /web - Fixed part. The web folder of the source code

Your Pimcore project will run at http://pimcore.local:9080/admin

Linux Installation - Ubuntu 14 or greater

Composer Installation

$ cd /your/working/directory
$ composer create-project pimcore/pimcore ./your-project-name
$ cd your-project-name
$ composer dumpautoload -o

Create Database

Pimcore uses MySQL, so either mysql or mariadb should suffice for the installation. Create a database with charset UTF-8 and a user with access privileges to the respective database.

Virtual Host - APACHE

For linux there are multiple possibilities for starting the pimcore project. For the sake of simplicity we are going to use APACHE2 to setup a virtual host. If you want to try installing it using NGINX, check this link for the config.

The apache configuration should be put inside /etc/apache2/sites-available/

Here is an example of an APACHE configuration:

<VirtualHost *:80>
    ServerName pimcore.local

    DocumentRoot /path/to/pimcore/web/

    <Directory /path/to/pimcore/web/>
                DirectoryIndex index.php
                Options FollowSymLinks
                AllowOverride All
                Require all granted
    </Directory>

    #ErrorLog /var/log/httpd/pimcore-error.log

    # Possible values include: debug, info, notice, warn, error, crit,
    # alert, emerg.
    LogLevel warn

    #CustomLog /var/log/httpd/pimcore-access.log combined

</VirtualHost>

NOTE: /path/to/pimcore should be replaced with the location of your main pimcore folder (where the composer.json is present).

Finishing the installation:

After the virtual host was created make sure you mark the new host as enabled by doing the following:

$ sudo a2ensite pimcore.local.conf

And restart Apache for changes to take place:

$ sudo service apache2 restart

If you still have problems with apache, you can checkout this links for other errors like permissions, etc.

Now we can proceed to the last steps, but using the url without port. Example: http://pimcore.local/install

Complete the Installation

You can complete the installation of Pimcore using the Pimcore Web Installer interface or by command line using the Pimcore CLI Installer.

Let’s see for example the Web based installation:

  1. Run the installation Interface through the URL http://pimcore.local:9080/install
  2. Fill in the required fields (database + admin user)
  3. Press Check Requirements to check if your system is ready for Pimcore
  4. Click Install Now!
⚠️ **GitHub.com Fallback** ⚠️