History: Gforge Install
Source of version: 2 (current)
Copy to clipboard
!Gforge Install This is an ((installation)) guide. How to install a multitiki on a GForged Server ''by ((USerPagexavidp|Xavier de Pedro))''. October'2004-May'2006. ^ -=Index=- ^ --- !! Introduction -=Introduction=- I'll explain how I did install one Tiki on a server with [http://www.gforge.com|GForge], and also two more tiki sites using its multi-install capability. This worked for Tiki versions ranging from 1.8.4 to 1.10cvs). {SPLIT(colsize=>90%|10%)}In my case, I installed them on http://ourproject.org (__op.o__), which offers free hosting for free projects (with [http://www.gnu.org/copyleft/copyleft.html|copylefted] content). So these steps can be followed easily there, and I guess that they are reproducible at any GForge'd server (version 3 or later). --- {img src=http://ourproject.org/sflogo.php?group_id=63 align=center link=http://ourproject.org} {SPLIT} !! Specific details of a GForged server -=Specific details of a GForged server=- We have to take into account some specificities of a GForged server: # For a __multitiki install__, there is a slightly different procedure than the one described in RecipeMultitiki, on InstallVirtualHosting, because with GForge, there is no need of root access to touch any httpd.conf. + . # If we consider, for instance, a parent tiki site called "myproject" and installed at URL http://myproject.ourproject.org, the URL of the multitiki child sites (for instance, site1, site2...) are of the form: ** http://myproject.__site1__.ourproject.org , ** http://myproject.__site2__.ourproject.org ... ++ (instead of the common names for virtual hosting: ++ http://__site1__.myproject.ourproject.org, ++ http://__site2__.myproject.ourproject.org, ...). + . # The op.o GForged server allows users to connect through SSH to execute commands, to the path (for a user called "userX"): + {CODE()}/var/lib/gforge/chroot/home/users/userX/{CODE} + And the project, called "myproject", is created at: + {CODE()}/var/lib/gforge/chroot/home/groups/myproject/{CODE} !! Setup of the new subdirectories in the multitiki -=Setup of the new subdirectories in the multitiki=- We'll assume that you already have an account at any Gforge'd server (such as op.o) # Download Tiki to your local computer. + . # Open a SFTP (SSH or secure file transfer) connection to the Gforge'd server. From GNU/Linux you can use __gftp__ (graphical two pane progam; very easy, friendly and localized to most languages! :-) or use __sftp__ from a shell, for instance. From M$ Windows you can use [http://www.winscp.org/|WinSCP] (nice and free software, also translated to other languages different from English). + . # Upload the file containing tiki install, and follow the common procedures described under the file "install" for a common single tiki install on Unix. + . + ''(if no success, get more information from InstallTiki to solve the problem that may have risen)''. # So that once you have your base tiki up and running, you have to execute again the setup command from the base directory where you installed tiki in (in my case, under /var/lib/gforge/chroot/home/groups/myproject/htdocs/ ): ## Log in again (if needed) to your gforged server account, using a ssh enabled program (calling ''ssh'' from shell on GNU/Linux or using, for instance, [http://www.chiark.greenend.org.uk/~sgtatham/putty/|Putty] for M$ Window$, or [http://www.ssh.com/support/downloads/secureshellwks/non-commercial.html|Secure Shell for non commercial users] on M$ Window$) ++ You should be in your home directory, like ++ {CODE()} /var/lib/gforge/chroot/home/users/userX/{CODE} ## Move to the directory of your project "myproject", and execute the command ++ {CODE()}cd ../.. cd /groups/myproject/htdocs/ ./setup.sh userX groupX 02755 myproject site1 site2 {CODE} + where userX is the name of the user, and groupX is the name of the project (groupX=myproject) + (in a similar manner to what is explained in InstallVirtualHosting) +. !! Creation of the new databases -=Creation of the new databases=- Request your GForge'd server admin to create the two new databases for you (assume names __ddbb1__ and __ddbb2__). !! Configuration of the database information on Tiki -=Configuration of the database information on Tiki=- # In a similar manner to what is explained in RecipeMultitiki, the local.php file must be modified to be like: + {CODE()} <?php $db_tiki='mysql'; $dbversion_tiki='1.9'; $host_tiki="localhost"; if ($_SERVER["HTTP_HOST"] == "myproject.ourproject.org") { $dbs_tiki = 'ddbb0'; $user_tiki="db_user_myproject"; $pass_tiki="****"; $tikidomain = 'myproject'; } elseif ($_SERVER["HTTP_HOST"] == "myproject.site1.ourproject.org") { $dbs_tiki = 'ddbb1'; $user_tiki="db_user_site1"; $pass_tiki="****"; $tikidomain = 'site1'; } elseif ($_SERVER["HTTP_HOST"] == "myproject.site2.ourproject.org") { $dbs_tiki = 'ddbb2'; $user_tiki="db_user_site2"; $pass_tiki="****"; $tikidomain = 'site2'; } else { // default case, your choice is to block or open to a default domain $dbs_tiki = 'myproject'; $user_tiki="db_user_myproject"; $pass_tiki="****"; $tikidomain = 'myproject'; } ?> {CODE} + Where "db_user_myproject", "db_user_site1" and "db_user_site2" are database user names, and "****" means they respective passwords. !! Fill in the databases of the child tikis -=Fill in the databases of the child tikis=- # If needed, place a copy of __tiki-install.php__ again under your base htdocs directory (normally it's deleted or renamed for security reasons after your first tiki installation, whenever it was). # Call to tiki-install.php from your favourite browser at your site1, such as: + {CODE()} http://myproject.site1.ourproject.org/tiki-install.php {CODE} + And follow the steps of the web installation assistant, creating a ddbb with, for instance, a __BasicEnabled profile for easy use__. + Hopefully everything would be executed successfully (:smile:) # Click on __Click here to proceed into tiki without removing the script__ ** Check that your base child tiki is installed successfully. # And go for the second child tiki (__site2__), repeating from step 2 to fill the second database (__ddbb2__), at + {CODE()} http://myproject.site2.ourproject.org/tiki-install.php {CODE} # Then you can (__and must__) remove or rename the tiki-install.php script, and enter the second child tiki site. If the browser does not remove autmoatically the tiki-install.php script, the do it manually, from __/var/lib/gforge/chroot/home/groups/myproject/htdocs/__, with the command: + {CODE()} mv ./tiki-install.php ./tiki-install.done {CODE} And that should be it!(:biggrin:) !! Configure your child tiki installs specifications -=Configure your child tiki installs specifications=- You should go to each child tiki install, and configure it properly to your needs or likes. For instance, # since tikiwiki uses cookies, we have to make sure the cookies know which site you are at. ** To do this you need to login as admin and go to the Login administration page. Toward the bottom is HTTP(S) server name, HTTP(S) port and HTTP(S) URL prefix. You will want to fill the approiate fields in. For my example site I would fill these fields in like this: ++ ^ ||HTTP server name|domain.com HTTP port|80 HTTP URL prefix|tiki-test1/|| ^ # If you are going to use the remember me feature you will also want to fill out these fields: Remember me domain, Remember me path. ** For my example site I would fill these fields in like this: ++ ^ ||Remember me domain|domain.com Remember me path|tiki-test1/|| ^ # You could, if you would like to, configure files to be stored under subdirectories and not inside the database. ** This can be set for wiki_attachments, files from file galleries, images from image galleries, trackers, and userfiles. ** You can create separate directories outside the htdocs directory, or whatever you like. Create them through the ssh screen, and configure them in your Child Tiki Admin settings for each feature. --- In case this brief tutorial was useful to anybody, I would appreciate receiving comments on this page. (:wink:)