Difference between revisions of "Mediawiki setup"
m (→Recovering wiki after upgrade)  | 
				|||
| Line 1: | Line 1: | ||
=== Typical configuration options ===  | 
|||
In LocalSettings.php (possible locations: /var/lib/mediawiki/, /var/lib/mediawiki/config/, or /etc/mediawiki/)  | 
|||
Change your logo (picture in top-left corner):  | 
|||
 $wgLogo = "http://urlpath/to/my/logo/picture.png";  | 
|||
Disable new user creation:  | 
|||
 $wgGroupPermissions['*']['createaccount'] = false;  | 
|||
=== Creating another wiki on the same webserver ===  | 
  === Creating another wiki on the same webserver ===  | 
||
Revision as of 15:37, 18 February 2009
Typical configuration options
In LocalSettings.php (possible locations: /var/lib/mediawiki/, /var/lib/mediawiki/config/, or /etc/mediawiki/)
Change your logo (picture in top-left corner):
$wgLogo = "http://urlpath/to/my/logo/picture.png";
Disable new user creation:
$wgGroupPermissions['*']['createaccount'] = false;
Creating another wiki on the same webserver
- create a new directory (say wiki2) in the document root.
 - lndir the /opt/mediawiki to the new directory,
 - assign the appropriate permissions to directories and
 - visit the wiki (http://localhost/wiki2) for configuration. Make sure that the database name, user and table prefix are different for this wiki.
 
Recovering wiki after upgrade
This is what happened: I upgraded Ubuntu to 8.04 and all of a sudden my wiki was unreachable... Investigation showed that there is a new mediawili installed, wiping almost all of the old configuration, including the /var/lib/mediawiki-?? with links.
Luckily I had the Localhost.php with settings in the old /etc/mediawiki-?? directory that was not wiped. After investigating I found that the content of the wiki remained in the mysql database. That gave me a hope, and this is what I did:
- recreated mysql passwords for the wikiuser and mysql-root. You can reset root password - stop mysql and start the daemon with no-
 
- reset mysql root password
 
 sudo /etc/init.d/mysql stop
 sudo mysqld --skip-grant-tables
 mysql -u root 
 mysql> UPDATE mysql.user SET Password=PASSWORD('password') WHERE User='root';
 mysql> FLUSH PRIVILEGES; 
 mysql> exit
 sudo mysqladmin shutdown -u root
 sudo /etc/init.d/mysql start
- Change mysql wikiuser password
 
 $ mysql -u root -p
 mysql> use mysql;
 mysql> update user set password=PASSWORD("NEWPASSWORD") where User='wikiuser';
 mysql> flush privileges;
 mysql> quit
- created a new root directory for the wiki (actually several for several wiki's)
 
sudo mkdir /var/lib/wiki
- used lndir to create links in the new directory
 
cd /var/lib/wiki lndir <insert your parameters here>
- added the following fragment to set up mediawiki with apache2: create/add this in /etc/mediawiki/apache.cnf
 
Alias /wiki /var/lib/wiki
#=== My wiki ===
<Directory /var/lib/wiki/>
       Options +FollowSymLinks
       AllowOverride All
       order allow,deny
       allow from all
</Directory>
# some directories must be protected
<Directory /var/lib/wiki/config>
       Options -FollowSymLinks
       AllowOverride None
</Directory>
<Directory /var/lib/wiki/upload>
       Options -FollowSymLinks
       AllowOverride None
</Directory>
- made sure /etc/apache2/conf.d has a link to the file above (in /etc/mediawiki/apache.conf)
 
- started web pointing to http://example.com/wiki and
 - set all the parameters as before, except using the new mysql passwords as appropriate.
 - compared the newly created Localsettings.php with my old (if present) and copied that into /var/lib/wiki, and set the permissions so that it could not be changed by anyone or read by anyone but the www-data (webserver).