How to install GeniusCart 2.x A CAUTION GeniusCart was developed because we needed a cart that did things others didn't, and was extremely easy to add new features to. It needed to be modular, SEO friendly, and secure. It serves us and our clients well in this regard. In short, it works great for us and we're sharing it with the world in hopes it is great for you too. Maybe some of you will even contribute to it. However it is not very fun to install in some situations. Consider yourself warned. We invite you to write a better installer or hire us (or anyone) to do so. Your name will then be in the project and people will love you. GeniusWeb.com LLC http://www.geniusweb.com/ BEFORE YOU BEGIN You should have an apache-like webserver, PHP 4.x or later and MySQL 3.23 or later. UNIX/Linux/BSD/Darwin or any other UNIX-Like OS expected. It probably works on other platforms but we don't know about them. This document assumes you have a good knowledge of web server software, and a good working knowledge of UNIX command line operations. It also requires command line access (ssh) to install the easy way. You can read the install.pl script and do the steps yourself via FTP but it is a hassle you probably don't want. Installation by hand takes far longer even if you have a good find/replace tool. GETTING STARTED Tip: The installer will create a file called "instlog.log" that may or may not help you diagnose any problems with the process. Unpack the archive file to a temporary directory on your server. tar jxvf gc2_xxx.tar.bz2 cd into the directory gc2_xxx EDIT the install.pl script if your document root folder is not named "web" RUN the install.pl script as your admin user, with the userid who the actual web site belongs to as the arg. su -c './install.pl [siteusername]' (replacing siteusername with the FTP user of the site you are installing to) If that fails, or you don't have root access, simply log in as the unprivileged user that the site belongs to and type ./install.pl and the program will try to install things as best it can, but you will have to set permissions more liberally to get things working correctly. All paths you give the installer will have to be writeable by the user you run the installer as. Follow the instructions in the install process. The "server root path" is NOT your document root, it is the folder below it. You will be asked for your web folder file after that. The reason for this is that we try to store all the code that we can outside the public web. The installer will then read your /etc/passwd file and group file to try to guess what user apache runs as. If it gets it wrong, you may have to fix those permissions yourself to make everything readable by the web server uid. Next you need to create the MySQL database. Your system administrator should be able to do this for you and provide you with a username/password/database name. You will need to populate your database. mysql -p -u [yourmysqluser] [yourdatabase] < setup-mysql.sql Provided there is no error from this command you can assume it went ok. For people upgrading from GeniusCart 1.x: See UPGRADING.txt at this point. Now you will probably need to create a .htaccess file in your document root folder containing lines like the following: AddType application/x-httpd-php .gc DirectoryIndex index.gc index.html index.htm default.htm php_value magic_quotes_gpc 0 This will tell your webserver that the .gc files need to be processed using PHP, that index.gc is the default file for your directories (though the others can be used as well) and that php should not have the magic_quotes_gpc on because this will cause performance issues for GeniusCart. You need to then add an Admin user to your database using a command like this: echo "INSERT INTO Admins (Username,'Password',access_level) VALUES ('[yourusername]',MD5('[yourpassword]'),'full');" \ | mysql -p -u [yourmysqluser] [yourdatabase] You can also use a tool like phpmyadmin to do the same thing. Don't forget to select MD5 for the password or it won't work. Once this admin user is added, you can log into the admin section and set up your site in full detail. https://www.you.com/gcadmin/ You will then want to edit the templates in (server root path / templates / lang / files) To give them the appropriate look to your site. You must preserve the filenames on most of the templates, and also preserve the template markers which look like unclosed HTML tags. It should be obvious which are markers and which are not, see the Developer.pdf file for more on the template system. Your GeniusCart 2 will coexist peacefully with all other types of scripts, HTML, and other files in the web directory. We sincerely wish you the best of success with your new shopping system. - The GeniusWeb.com Staff