Path / documentation / ez publish / technical manual / 3.6 / installation / normal installation / installing ez publish on wi...

Caution: This documentation is for eZ Publish legacy, from version 3.x to 5.x.
For 5.x documentation covering Platform see eZ Documentation Center, for difference between legacy and Platform see 5.x Architecture overview.

Installing eZ Publish on Windows

The requirements for doing a normal installation must be met! Please read the "Requirements for doing a normal installation" section first. Proceed only if you have access to a Windows based system with Apache, PHP, MySQL already installed and running. (Do not use Apache 2.x for Windows, PHP 4.4.x, PHP 5.x. Please note that eZ Publish is supposed to work with PostgreSQL as well although this combination is not tested on Windows.) 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 MySQL database
  • Downloading eZ Publish
  • Unpacking eZ Publish
  • Initiating the setup wizard

Setting up a MySQL 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 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>';


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


The password that belongs to the mysql_username.


The username that will be used to access the database.


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


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


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


The character encoding scheme to be used in the database.

Downloading eZ Publish

The latest stable version of eZ Publish can be downloaded from Windows users should download the ".zip" archive.

Unpacking eZ Publish

Use your favorite utility to unpack the downloaded eZ Publish archive to a web-served directory (a directory that is reachable using a web browser). 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 "" 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:

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:

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

Balazs Halasy (13/01/2005 11:49 am)

Julia Shymova (18/09/2007 2:08 pm)

Balazs Halasy, Svitlana Shatokhina, Julia Shymova


  • where do i specify the database name

    You are asked to create a database in 3.6.2, but setup doesn't ask for a database name
  • Setup Wizard doesnt ask for dbName

    The setup wizard never asks for a database name and a default one is not listed in the docs... There is a value in setup.ini under database settings but it does not seem to help with setup. My install fails; is there a default db name or way to set it?