ibexa

Path

ez publish / technical manual / 3.6 / installation / normal installation / installing ez publish on a...


Caution: This documentation is for eZ Publish legacy, from version 3.x to 5.x.

Installing eZ Publish on a Linux/UNIX based system

The requirements for doing a normal installation must be met. Please read the previous section if you're not sure about the requirements. Proceed only if you have access to a UNIX based environment with Apache, PHP, MySQL or PostgreSQL already installed and running. (Please note that PHP 4.4, PHP 5 should not be used.) As mentioned earlier, the database server may run on a different computer than the web server. This section will guide you through the following steps:

  • Setting up a database (MySQL or PostgreSQL)
  • Downloading eZ Publish
  • Unpacking eZ Publish
  • Initiating the setup wizard

Setting up a database

A database must be created before the initiation of the setup wizard takes place. The following text explains how to set up a database using either MySQL or PostgreSQL.

MySQL

  1. Login as root:

    $ mysql -u <mysql_username> -p<mysql_password>
    

     

    The MySQL client should display a "mysql>" prompt.

  2. Create a new database:
    mysql> create database <database> character set <character_set>;
    
  3. Grant access permissions:
    mysql> grant all on <database>.* to <username>@<host> identified by '<password>';
    

mysql_username

The MySQL user (if no user is set up, use "root").

mysql_password

The password that belongs to the mysql_username.

username

The username that will be used to access the database.

password

The password you wish to set in order to limit access to the database.

database

The name of the database, for example "my_new_database".

host

The hostname of the server on which eZ Publish will be running. (may be "localhost" if MySQL is installed on the same server).

character_set

The character encoding scheme to be used in the database.

PostgreSQL

  1. Become the PostgreSQL super user (normally called postgres):
    $ su <postgres_super_user>
    
  2. Create a PostgreSQL user:
    $ createuser <username>
    
  3. Create a database:
    $ createdb -E <encoding> <database>
    
  4. Import the "pgcrypto" module into the database:
    $ psql <database> < /usr/share/pgsql/contrib/pgcrypto.sql
    

username

The username that will be used to access the database.

database

The name of the database, for example "my_new_database".

encoding

The character encoding scheme to be used in the database.

Downloading eZ Publish

The latest stable version of eZ Publish can be downloaded from http://ez.no/download/ez_publish.

Unpacking eZ Publish

Use your favorite tool to unpack the downloaded eZ Publish distribution to a web-served directory (a directory that is reachable using a web browser). The following example shows how to do this using the tar utility (to unpack a tar.gz file, assuming that the "tar" and the "gzip" utilities are installed on the system):

$ tar zxvf ezpublish-<version_number>.tar.gz -C <web_served_directory>

version_number

The version number of eZ Publish that was downloaded.

web_served_directory

Full path to a directory that is served by the web server. This can be the path to the document root of the web server, or a personal web-directory (usually called "public_html" or "www", and located inside a user's home directory).

The extraction utility will unpack eZ Publish into a subdirectory called "ezpublish-3.x.x". Feel free to rename this directory to something more meaningful, for example "my_site".

Initiating the setup wizard

The setup wizard can be started using a web browser immediately after the previous steps (described in this section) are completed. It will be automatically run the first time someone tries to access/browse the index.php file located in the eZ Publish directory. Let's assume that we are using a server with the hostname "www.example.com" and that after unpacking, the eZ Publish directory was renamed to "my_site".

Document root example

If eZ Publish was unpacked into a directory called "my_site" under the document root, the setup wizard can be initiated by browsing the following URL: http://www.example.com/my_site/index.php.

Home directory example

If eZ Publish was unpacked to a web-served directory located inside the home directory of a user with the username "peter", (usually called "public_html", "www", "http", "html" or "web"), the setup wizard can be initiated by browsing the following URL: http://www.example.com/~peter/my_site/index.php.

Please refer to "The setup wizard" section for a detailed description of the web based setup wizard.

Balazs Halasy (13/01/2005 10:25 am)

Svitlana Shatokhina (10/01/2008 12:31 pm)

Balazs Halasy, Svitlana Shatokhina, Julia Shymova


Comments

  • Site security?


    Your site is not running in a virtual host mode, this is insecure. It is recommended to run eZ publish in virtual host mode. If you do not have the possibility to use virtual host mode, you should follow the instructions below about how to install an .htaccess file. The .htaccess file tells the web server to restrict the access to certain files.
    If you have shell access, you can run the following commmands...?

    cd /web/htdocs/www.informazzurro.it/home

    cp .htaccess_root .htaccess

    If you do not have shell access, you will have to copy the file using an FTP client or ask your hosting provider to do this for you.

    Can I have a correct file .htaccess_root to upload on my server?
    Isn't there a config.php file for simply customize the application?
  • Installation does not work

    Hello,

    if i start with http://ws-buero.my-home.de:8888/index.php i got the error message:

    Warning: main(lib/ezutils/classes/ezsys.php): failed to open stream: No such file or directory in /srv/www/htdocs/lib/ezutils/classes/ezdebug.php on line 75

    Warning: main(): Failed opening 'lib/ezutils/classes/ezsys.php' for inclusion (include_path='/usr/share/php') in /srv/www/htdocs/lib/ezutils/classes/ezdebug.php on line 75

    Warning: main(lib/ezutils/classes/ezdebug.php): failed to open stream: No such file or directory in /srv/www/htdocs/lib/ezutils/classes/ezini.php on line 67

    Warning: main(): Failed opening 'lib/ezutils/classes/ezdebug.php' for inclusion (include_path='/usr/share/php') in /srv/www/htdocs/lib/ezutils/classes/ezini.php on line 67

    Warning: main(lib/ezfile/classes/ezdir.php): failed to open stream: No such file or directory in /srv/www/htdocs/lib/ezutils/classes/ezini.php on line 68

    Warning: main(): Failed opening 'lib/ezfile/classes/ezdir.php' for inclusion (include_path='/usr/share/php') in /srv/www/htdocs/lib/ezutils/classes/ezini.php on line 68

    Warning: main(lib/ezutils/classes/ezdebug.php): failed to open stream: No such file or directory in /srv/www/htdocs/lib/ezutils/classes/ezdebugsetting.php on line 63

    Warning: main(): Failed opening 'lib/ezutils/classes/ezdebug.php' for inclusion (include_path='/usr/share/php') in /srv/www/htdocs/lib/ezutils/classes/ezdebugsetting.php on line 63

    Warning: main(lib/ezutils/classes/ezini.php): failed to open stream: No such file or directory in /srv/www/htdocs/lib/ezutils/classes/ezdebugsetting.php on line 64

    Warning: main(): Failed opening 'lib/ezutils/classes/ezini.php' for inclusion (include_path='/usr/share/php') in /srv/www/htdocs/lib/ezutils/classes/ezdebugsetting.php on line 64

    Fatal error: Undefined class name 'ezdir' in /srv/www/htdocs/lib/ezutils/classes/ezini.php on line 285

    ezpublish is running on an linux virtual Server Apache 2 with php 4.4.0

    I set chmod -R 777

    What is wrong?

    Thankyou
    • Re: Installation does not work

      I have the same mesage.

      Solution 1
      extend your include-paht in the php.ini (add /srv/www/htdocs/ezutis/classes in your case)

      Solution 2
      Go to the files an change the lines mentiond so they point to the file.
      Example for the first errormessage:
      - No such file or directory in /srv/www/htdocs/lib/ezutils/classes/ezdebug.php on line 75
      => Goto ezdebut line 75
      include_once( "lib/ezutils/classes/ezsys.php" );
      and chage it to
      include_once( "ezsys.php" );

      Hope this helps
      thomas