General installation guide for all eZ distributions
This installation guide can be followed with any eZ Symfony distribution, here are a list of available distributions from eZ:
Type | Archive | License | GIT / Composer |
---|---|---|---|
eZ Platform - "clean" | share.ez.no/downloads/downloads | GPL | ezsystems/ezplatform (INSTALL.md) |
eZ Platform - "demo" | Available via Git / Composer | GPL | ezsystems/ezplatform-demo |
eZ Studio - "clean" | support.ez.no/Downloads | BUL (requires eZ Enterprise subscription) | ezsystems/ezstudio (INSTALL.md) |
eZ Studio - "demo" | support.ez.no/Downloads | BUL (requires eZ Enterprise subscription) | ezsystems/ezstudio-demo |
Terms used in this guide
/<root-dir>/
: The filesystem path where eZ distribution is installed in. Examples:/home/myuser/www/
or/var/sites/<project-name>/
- cli: command line interface. For Linux/BSD/OS X specific commands, use of
bash
or similar is assumed.
Prerequisites
These instructions assume you have technical knowledge and have already installed PHP, web server & a database server needed for this software. For further information on requirements see Requirements page.
Before you start:
- Create Database: installation will ask you for credentials/details for the database to use.
- Set php.ini memory_limit=256M before running the commands below.
- Optional: You can also set up Solr to be used by eZ distribution and take note of the url it is accessible on.
Installation
1. Install/Extract eZ distribution:
Described below are two methods of installing eZ distribution. What is common between them is that you should make sure relevant settings are generated into app/config/parameters.yml
as a result of this step.
parameters.yml
contains settings for your database, mail system, and optionally Solr if search_engine
is configured as solr
, as opposed to default legacy
(a limited database-powered search engine).
A. Extract archive (tar/zip) from the relevant address listed in the table above.
Extract the eZ distribution archive to a directory, then execute post-install scripts:
B. Install via Composer.
Run composer require with one of the packages listed at the top of this page:
At the end of the installation process, you will be asked for basic configuration options, such as database credentials.
2. Only for *NIX users Setup folder rights:
Like most things, Symfony documentation applies here, meaning app/cache
and app/logs
need to be writable by cli and web server user. Furthermore, future files and directories created by these two users will need to inherit those access rights. For security reasons, there is no need for web server to have access to write to other directories.
Change www-data
to your web server user:
A. Using ACL on a Linux/BSD system that supports chmod +a
B. Using ACL on a Linux/BSD system that does not support chmod +a
Some systems don't support chmod +a, but do support another utility called setfacl. You may need to enable ACL support on your partition and install setfacl before using it (as is the case with Ubuntu), in this way:
C. Using chown on Linux/BSD/OS X systems that don't support ACL
Some systems don't support ACL at all. You will need to set your web server's user as the owner of the required directories:
D. Using chmod on a Linux/BSD/OS X system where you can't change owner
If you can't use ACL and aren't allowed to change owner, you can use chmod, making the files writable by everybody. Note that this method really isn't recommended as it allows any user to do anything:
When using chmod, note that newly created files (such as cache) owned by the web server's user may have different/restrictive permissions. In this case, it may be required to change the umask so that the cache and log directories will be group-writable or world-writable (umask(0002)
or umask(0000)
respectively).
It may also possible to add the group ownership inheritance flag so new files inherit the current group, and use 775
/664
in the command lines above instead of world-writable:
E. Setup folder rights on Windows
For your choice of web server you'll need to make sure web server user has read access to <root-dir>
, and write access to the following directories:
- app/cache
- app/logs
3. Configure a VirtualHost:
A virtual host setup is the recommended, most secure setup of eZ distribution. General virtual host setup template for Apache and Nginx can be found in the doc/
folder of your eZ installation. For the latest version you can also find it in same doc/
folder in the relevant Git repository listed in the table above.
4. Run installation command:
You may now complete the eZ distribution installation with the ezplatform:install
command, however which options you may install depends on your distribution:
Password for the generated admin
user is publish
, this name and password is needed when you want to log in to backend UI. Future versions will prompt you for a unique password during installation.
If you get message "Unknown install type 'demo'
" or similar, execute the following for possible options
php -d memory_limit=-1 app/console ezplatform:install --env=prod --help
5. Access your installation
You can now point your browser to the installation and browse the site. To access the UI backend, use the /ez
URL.
1 Comment
Rafał Toborek
For all of you interested in trying eZ Platform v1 on OS X Yosemite, you can take a look at my installation guide (it is a github repo, all contributions are welcome).
This is a from-scratch installation guide with all required dependencies and configuration (very helpful in the development process).