To install magento on a fresh server use the following.
- Install apache, mysql and PHP5 “$ apt-get install apache2 mysql-server php5 php5-mysql php-soap php5-mcrypt php5-curl php5-gd”
- Edit the vhost config for the apache site [/etc/apache2/sites-enabled/000-default]
- Verify that “AllowOverride” is set to All for the magento directory
- Make sure that mof_rewrite is loaded; use “$ a2enmod rewrite” and then reload apache2
- Edit /etc/php5/apache2/php.ini
- “memory_limit” [the manual says] no less than 256Mb (preferably 512)
- “max_execution_time” [this is the max time that a script may be left running] SOAP requests take time, so make suer it is at a reasonable time
- “upload_max_filesize” Set this to a size that is reasonable depending on what you plan to upload (manuals might be large)
- “post_max_size” Set this to a size that is reasonable depending on what you plan to post (manuals might be large); also make sure that the value and the modifier is correct (so that it says 8M and not just 8 for instance)
- “display_errors” Set to Off
- “log_errors” Set to On
- “error_log” Set to a file that you will be able to find [if you wish to have it in a subdir; create that as root and give it permissions as apache log dir]
- download magento (lastest version from magento
- Upack it (I choose bzip2 format) “$ tar -jxvvf magento-downloader-1.3.2.1.tar.bz2” and make sure the files gets put in the directory you wish
- Some directories have to be writable to the webserver (and all subdirectories, where there are)
- var
- var/.htaccess
- app/etc
- media
- If you are using the downloader installation
- “$./pear mage-setup .”
- “$./pear install magento-core/Mage_All_Latest”
- “$rm -rf downloader/pearlib/cache/* downloader/pearlib/download/*”
- Create database and database user [this is to do it manually via mysql console]
- “$mysql -uroot -p”
- “mysql> create database magento;”
- “mysql> use mysql;”
- “mysql> INSERT INTO user (Host,User,Password) VALUES (‘localhost’, ‘magento’, PASSWORD(‘password’));”
- “mysql> GRANT ALL ON magento.* TO ‘magento’;”
- “mysql> FLUSH PRIVILEGES;”
- “mysql> exit”
- Go to the webserver and complete the installation
- If you get stuck on the configuration page [that you get back to it even after adding correct information]:
- Check “AllowOverride” in the apache config.
- Check “post_max_size2 in the php.ini [also check so that the value is either absolute or has a modifier; 8 means 8 bytes while 8M means 8Mb]