Pimcore Installation Best Practices - Sintraconsulting/pimcore-product-sync-plugin GitHub Wiki
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.
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.
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.
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:
C:\xampp\htdocs\pimcore
In substitution to download and unzip, you can also Install via Composer.
Create a MySql database for the project. You will need to insert schema information later in order to complete Pimcore installation procedure.
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
$ cd /your/working/directory
$ composer create-project pimcore/pimcore ./your-project-name
$ cd your-project-name
$ composer dumpautoload -o
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.
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).
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
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:
- Run the installation Interface through the URL http://pimcore.local:9080/install
- Fill in the required fields (database + admin user)
- Press Check Requirements to check if your system is ready for Pimcore
- Click Install Now!