Fixing a small css issue in the user class.
[elgg.git] / INSTALL
blob24a92607270344be25f633085b168c7f02ea576c
1 Elgg version 0.7 installation instructions
3 Ben Werdmuller <ben@curverider.co.uk>
4 12 December 2006
7 1. BEFORE YOU BEGIN
9 1.1 Requirements
11 Please read LICENSE.
13 Elgg currently requires the Apache web server with mod_rewrite
14 installed and the ability to send emails, plus PHP 4.3+ and MySQL 
15 4.1+ (Postgres can also be used).  It has currently been tested on 
16 Apache installations running Red Hat Linux and Microsoft Windows XP.
18 In your Apache configuration, you must have AllowOverride set to
19 All for the directory where Elgg is installed.
21 You must have a database on the database server ready for use by Elgg.
23 You must have the GD library installed.
25 For internationalisation, you must have gettext support installed
26 on your server and compiled into PHP.  If this is not found, Elgg
27 will revert to English.
29 If you have any problems installing, please consider joining
30 http://elgg.net/ and joining the Elgg Installation Support
31 community at http://elgg.net/support/ .
34 1.2 Recommendations
36 For this release, it is recommended that MySQL has cacheing enabled.
37 Please see the MySQL documentation for instructions, or ask your
38 system administrator.
41 1.3 Time estimate
43 Assuming you have satisfied the requirements in 1.1, the installation
44 should not take longer than 20 minutes. This may vary depending on
45 the connection speed to your web server.
49 2. INSTALLING FILES
52 2.1 Deploy Elgg framework
54 Move all files from the distribution package to your web server root directory.
55 This is normally called 'public_html', 'httpdocs' or 'www'. If you like, you 
56 can place Elgg in a subdirectory of this; commonly, people will place it in
57 one called 'elgg'.
59 Rename htaccess-dist to .htaccess, and config-dist.php to config.php.
62 2.2 Create data directory
64 The data directory needs to be written to during Elgg's normal 
65 operation to store uploaded files and so on.  This does not come with
66 Elgg out of the box, and needs to be manually created. You can 
67 create it anywhere reachable by the Elgg installation scripts, 
68 although we recommend you place it outside of your web server root.
70 You must assign the correct privileges.  To do this you may be able to
71 right click on the folder and set the "CHMOD" value, or you may have 
72 to use your command line terminal, navigate to the data folder, and
73 type:
75     chmod 777 data
76     
77 Where 'data' is the name of your data directory.
80 2.3 Allow admin access to the templates
82 If you want to use the Elgg administration panel to change templates etc,
83 you will also need to run the following command from the root of your Elgg
84 installation:
86     chmod 777 _templates/Default_Template
89 3. SETTING UP ELGG
92 3.1 Edit config.php
94 config.php does not exist out of the box.  You will need to copy
95 config-dist.php to config.php and edit the configuration values there.
97 There are several variables that must be set at the top of the file -
98 all of them are important, and they are clearly described within the
99 file.  Each of them is of the form:
101     $CFG->data = 'value';
102     
103 You must enter your values within the second set of quotation marks.
104 To include a quotation mark within a value (e.g. if you wanted 
105 My University's "Elgg" Trial to be your site title), prefix it with
106 a backslash ("\").
109 3.2 Customise your default homepage and other settings
111 Once you've filled in config.php, you can visit http://yoursite/_elggadmin/,
112 and log in using the main email address and news initial password. This will
113 allow you to change various aspects of your site, including the default
114 template and the site homepage.
117 3.3 Optional plugins
119 Misja Hoebe has written an XML-RPC unit that requires the PEAR library.
120 Please see units/rpc/README for more details. If you are sure you have
121 all the prerequisites for this unit, uncomment the include XMLRPC line
122 in the plugins section of includes.php.
124 We have also included an implementation of the TinyMCE editor. This
125 is enabled by default. To disable it, comment out the TinyMCE line in
126 the plugins section of includes.php.
129 3.4 Log in
131 We have included a default user, "news". This user owns all the
132 public custom templates. Its login name is "news" and its default
133 password is "password"; you should log in and change this as soon
134 as possible. All new users will automatically list the news account
135 as a friend, so you should not delete it.
137 The news account comes with full administrator access, whether you've
138 upgraded or installed fresh. To change this (we recommend that you do 
139 as a matter of urgency for security reasons), create a second account, 
140 and give that account administrator privileges using the administrator
141 panel.
144 3.5 Elgg in a subdirectory and 404 errors
146 If you are running Elgg in a subdirectory of your web site, and when browsing 
147 around it pages seem to be missing, you may also need to edit the .htaccess file. 
148 Below the "RewriteEngine on" line, add a line:
150 RewriteBase /subdirectory/
152 changing subdirectory to the location of Elgg relative to your overall web root.
154 For example, if your site is http://example.com/
155               and Elgg is in http://example.com/sites/elgg/
156 try adding the line:
158 RewriteBase /sites/elgg/
160 If you're not running Elgg in a subdirectory on your site, but still getting lots
161 of 404 errors beyond the front page, you could instead try:
163 RewriteBase /
166 3.6 Tell us about it!
168 Because Elgg is free and open source, we often don't hear about new
169 installations. You don't have to, but we'd love it if you'd tell us
170 what you're doing with it. You can reach us at info@curverider.co.uk,
171 or give us a phone using the details in README.
174 4. FURTHER CUSTOMISATION AND DEVELOPMENTS
176 Please keep an eye on http://elgg.org/ for forthcoming developments 
177 within Elgg, including documentation on how to alter your default 
178 templates and writing new functionality into the system.