These are instructions for installing via GIT (development version), look in INSTALL_ARCHIVE.md for instructions on how to install a eZ Platform build/archive.
-
/<root-dir>/
: The filesystem path where eZ Platform is installed inExamples:
/home/myuser/www/
or/var/sites/<project-name>/
-
/<root-dir>/web/
: A directory meant to be the DocumentRoot of the eZ Platform installation (<root-dir>
is not supposed to be readable from web server perspective)Examples:
/home/myuser/www/web/
or/var/sites/<project-name>/web/
These instructions assume you have strong technical knowledge and have already installed PHP, web server & a database server with a corresponding clean database needed for this software. For further information on requirements see: https://doc.ez.no/display/EZP/Requirements
-
Get eZ Platform:
A. Archive (tar/zip) from http://share.ez.no/downloads/downloads
Extract the eZ Platform 15.01(or higher) archive to a directory, then execute post install scripts: *Note: The post install scripts will ask you to fill in some settings, including database settings.* ```bash cd /<directory>/ curl -s http://getcomposer.org/installer | php php -d memory_limit=-1 composer.phar run-script post-install-cmd ```
B. Composer
You can get eZ Platform using composer with the following commands:
Note: composer will take its time to download all libraries and when done you will be asked to fill in some settings, including database settings.
```bash curl -s http://getcomposer.org/installer | php php -d memory_limit=-1 composer.phar create-project --no-dev ezsystems/ezplatform <directory> [<version>] cd /<directory>/ ```
Options: -
<version>
: Optional, if ommited you'll get latests stable, examples for specifying: -dev-master
to get current development version (pre release)master
branch -v0.5.0
to pick a specific release - For core development: Add '--prefer-source' to get full git clones, and remove '--no-dev' to get things like phpunit and behat installed. - Further reading: https://getcomposer.org/doc/03-cli.md#create-project -
*Only for NIX users Setup folder rights:
*Skip to step #3 if you plan to install LegacyBridge and eZ Publish Legacy with this installation!* One common issue is that the `ezpublish/cache`, `ezpublish/logs` and `ezpublish/config` directories **must be writable both by the web server and the command line user**. If your web server user is different from your command line user, you can run the following commands just once in your project to ensure that permissions will be set up properly. Change `www-data` to your web server user: A. **Using ACL on a system that supports chmod +a** ```bash $ rm -rf ezpublish/cache/* ezpublish/logs/* ezpublish/sessions/* $ sudo chmod +a "www-data allow delete,write,append,file_inherit,directory_inherit" \ ezpublish/{cache,logs,config,sessions} web $ sudo chmod +a "`whoami` allow delete,write,append,file_inherit,directory_inherit" \ ezpublish/{cache,logs,config,sessions} web ``` B. **Using ACL on a 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), like so: ```bash $ sudo setfacl -R -m u:www-data:rwx -m u:www-data:rwx \ ezpublish/{cache,logs,config,sessions} web $ sudo setfacl -dR -m u:www-data:rwx -m u:`whoami`:rwx \ ezpublish/{cache,logs,config,sessions} web ``` C. **Using chown on systems that don't support ACL** Some systems don't support ACL at all. You will either need to set your web server's user as the owner of the required directories. ```bash $ sudo chown -R www-data:www-data ezpublish/{cache,logs,config,sessions} web $ sudo find {ezpublish/{cache,logs,config,sessions},web} -type d | sudo xargs chmod -R 775 $ sudo find {ezpublish/{cache,logs,config},web} -type f | sudo xargs chmod -R 664 ``` D. **Using chmod** 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. ```bash $ sudo find {ezpublish/{cache,logs,config,sessions},web} -type d | sudo xargs chmod -R 777 $ sudo find {ezpublish/{cache,logs,config,sessions},web} -type f | sudo xargs chmod -R 666 ```
-
Optional Install LegacyBridge and eZ Publish Legacy:
eZ Platform, unlike eZ Publish 5.x, does not come with eZ Publish Legacy (the updated version of eZ Publish 4.x). For the time being it is still possible to run Legacy side by side with eZ Platform, further instructions here: https://doc.ez.no/display/EZP/Installing+eZ+Publish+Legacy+on+top+of+eZ+Platform
-
Optional Configure a VirtualHost:
See: https://confluence.ez.no/display/EZP/Virtual+host+setup
-
Run installation command:
You may now complete the eZ Platform installation with ezplatform:install command, example of use:
$ php ezpublish/console ezplatform:install --env prod demo-clean
Note: Password for the generated
admin
user ispublish
, this name and password is needed when you would like to login to backend Platform UI. Future versions will prompt you for a unique password during installation.
You can now point your browser to the installation and browse the site. To access the Platform UI backend, use the /shell
URL.