Help:Running MediaWiki on Gentoo Linux: Difference between revisions
Content deleted Content added
m →adding php support (step 2): Updata |
m Adding {{languages}} |
||
(16 intermediate revisions by 14 users not shown) | |||
Line 1: | Line 1: | ||
{{MovedToMediaWiki|Manual:Running MediaWiki on Gentoo Linux}} |
|||
{{H:h|system admin toc}} |
|||
Imported with full page histories. [[User:Titoxd|Tito]][[:en:User:Titoxd|<font color="#008000">xd</font>]]<sup>([[:en:User talk:Titoxd|?!?]])</sup> 03:40, 4 May 2007 (UTC) |
|||
== Prerequisites == |
|||
{{languages}} |
|||
It is possible to have connection problems when you emerge something. |
|||
Try to add one line for mirror list into your /etc/make.conf like following: |
|||
<nowiki> |
|||
GENTOO_MIRRORS="ftp://ftp.heanet.ie/pub/gentoo/ http://ftp.easynet.nl/mirror/gentoo/" |
|||
</nowiki> |
|||
You can get possible mirrors and test them by accessing |
|||
http://www.gentoo.org/main/en/mirrors.xml |
|||
* Optional, suggested |
|||
emerge sync |
|||
emerge ufed -uD |
|||
Note: ufed is the Gentoo Linux USE flags editor |
|||
ufed (check useflags, you'll need mod_php, plus gd if you want thumbnails) |
|||
the option -uD means update and check the dependence tree thoroughly. |
|||
* Needed for support of mathematical formulas |
|||
emerge imagemagick |
|||
(ImageMagick can also make thumbnails if you do not want to include gd [a library] support in php). If you have done this it is a good idea to add support for imagemagick in the USE flags. |
|||
To add LaTeX support do: |
|||
emerge tetex |
|||
After that you should see the programs ''latex'' and ''dvips'' available on the command line. |
|||
Finally do: |
|||
emerge dev-lang/ocaml |
|||
You can find additional info [http://edu.gbssg.ch/jkeel/mediawiki-1.3.2/math/ here(broken link)] about installing support for mathematical formulas in mediawiki. |
|||
* Required packages... |
|||
Remember to -p them first! if you already have them, you probably don't need them again!. For example type 'emerge -p mysql' to see what would happen |
|||
emerge mysql -uD |
|||
emerge apache -uD |
|||
USE="session" emerge php -uD |
|||
Note: I encountered a problem when merge php, ERROR: media-video/nvidia-kernel-1.0.5336-r4 failed. I checked it out from http://forums.gentoo.org/ and found it is not a simple problem. I suggest to use 'USE="session" emerge php ' instead of 'USE="session" emerge php -uD' |
|||
If you are getting errors the echoed text at the end of the emerge will inform you of the USE flags that are required so just add them to your 'package.use' file. |
|||
(check useflags with ufed. php has many use flags options.. use emerge -pv php to see them all.) |
|||
NOTE!! by default, some (if not all) php ebuilds disable sessions, which will break logins. add sessions by appending 'session' to the mod_php USE line in /etc/portage/package.use) |
|||
(probably required) (so try the following) |
|||
USE="session" emerge mod_php -uD |
|||
Another NOTE: you can also add 'session' in the USE flags permanently with ufed. I have not encountered yet problems with this setting. Also make sure that mysql support is added in USE when emerging php (stating the obvious but it doesn't hurt :)) |
|||
== Configure Apache == |
|||
start web server by |
|||
apache2 |
|||
Or |
|||
/etc/init.d/apache2 start |
|||
Stop it by |
|||
apache2ctl stop |
|||
Or |
|||
/etc/init.d/apache2 stop |
|||
After making changes to the Apache config files, you can quickly restart Apache by |
|||
/etc/init.d/apache2 restart |
|||
(get services going by default) |
|||
rc-update add apache2 default |
|||
(turn on services) |
|||
/etc/init.d/apache2 start |
|||
=== Add PHP Support === |
|||
apache2 uses modules to dynamically load and unload extra functionalities. php support is one of them. |
|||
There is no mod_php module in apache server after the default installation. We need to add mod_php into apache. |
|||
Edit the configuration file of apache2 |
|||
==== adding php support (step 1) ==== |
|||
vi /etc/conf.d/apache2 |
|||
<pre> |
|||
#APACHE2_OPTS="-D SSL" |
|||
APACHE2_OPTS="-D SSL -D PHP5" |
|||
</pre> |
|||
/etc/init.d/apache2 restart |
|||
Gentoo automatically installs <tt>/etc/apache2/modules.d/70_mod_php.conf</tt> |
|||
which contains the directives to load the module, as described in step 2. |
|||
The <tt>-D PHP5</tt> is necessary to pass the <tt>IfDefine PHP5</tt> which wraps |
|||
<tt>70_mod_php.conf</tt>. |
|||
(This is with <tt>net-www/apache-2.0.58-r2</tt>.) |
|||
==== adding php support (step 2) ==== |
|||
vi /etc/apache2/conf/apache2.conf or vi /etc/apache2/httpd.conf |
|||
You will see module list in apache2.conf |
|||
<pre> |
|||
LoadModule access_module modules/mod_access.so |
|||
LoadModule auth_module modules/mod_auth.so |
|||
LoadModule auth_anon_module modules/mod_auth_anon.so |
|||
LoadModule auth_dbm_module modules/mod_auth_dbm.so |
|||
</pre> |
|||
or you can edit /etc/apache2/modules.d/*.conf, where *.conf is the name of the module ( ex: 70_mod_php5.conf ) |
|||
Add mod_php into it by one more line: |
|||
LoadModule php5_module modules/libphp5.so |
|||
Consequently add .php file name handling capability by adding |
|||
<pre> |
|||
AddType application/x-httpd-php .php |
|||
AddType application/x-httpd-php .phtml |
|||
AddType application/x-httpd-php .php3 |
|||
AddType application/x-httpd-php .php4 |
|||
AddType application/x-httpd-php-source .phps |
|||
</pre> |
|||
save apache2.conf and restart apache server |
|||
apache2ctl restart |
|||
or |
|||
/etc/init.d/apache2 restart |
|||
We now have an apache server with php support. |
|||
== Configure MySQL == |
|||
Refer to |
|||
http://meta.wikimedia.org/wiki/MySQL_config |
|||
for details |
|||
Initialize the mysql database |
|||
ebuild /var/db/pkg/dev-db/mysql-VERSION/mysql-VERSION.ebuild config |
|||
Start the server |
|||
/etc/init.d/mysql start |
|||
Choose a password: |
|||
/usr/bin/mysqladmin -u root password 'PASSWORD' |
|||
Test it |
|||
mysqlshow -p |
|||
Let it run automatically each time your machine is powered up |
|||
rc-update add mysql default |
|||
= Get Mediawiki = |
|||
Run the following command to install mediawiki: |
|||
emerge mediawiki |
|||
== Unpack == |
|||
cp -rf /usr/share/webapps/mediawiki/{version...}/htdocs /var/www/localhost |
|||
(you don't have put it into your webroot. It is also possible to alias the directory, conditional on php being active and suitable symlink permissions) |
|||
== Set Permissions == |
|||
user should be apache, group should be apache. |
|||
chown -R apache:apache <PATH_TO_MEDIAWIKI_DIRECTORY> |
|||
You should not give anybody access to this directory.. or at least LocalSettings.conf as it contains passwords! Just let user apache do it. |
|||
Mediawiki 1.3.2 needs to write config directory during initialization. Now, we use /var/www/localhost/htdocs/mediawiki |
|||
cd /var/www/localhost/htdocs/mediawiki |
|||
chmod a+w config |
|||
== Alias Directory == |
|||
edit your /etc/apache2/conf/commonapache2.conf file or /etc/apache2/httpd.conf |
|||
You do NOT want mediawiki in a world readable directory, when php isn't running, so this is useful: |
|||
(this is using apache2, so the php4 module is called sapi_apache2.c ) |
|||
<pre> |
|||
<IfModule sapi_apache2.c> |
|||
Alias /mediawiki/ /var/www/localhost/mediawiki-1.3.3/ |
|||
Alias /mediawiki /var/www/localhost/mediawiki-1.3.3 |
|||
Alias /wiki_persistant/ /var/www/localhost/wiki_persistant/ |
|||
Alias /wiki_persistant /var/www/localhost/wiki_persistant |
|||
<Directory /var/www/localhost/wiki_persistant/> |
|||
Order deny,allow |
|||
Allow from all |
|||
</Directory> |
|||
<Directory /var/www/localhost/mediawiki-1.3.3/> |
|||
Options +includes |
|||
Order deny,allow |
|||
Allow from all |
|||
# AllowOverride All |
|||
</Directory> |
|||
</IfModule> |
|||
</pre> |
|||
== Setup Rewrite Rules == |
|||
I have no idea how to do these, see [[Eliminating index.php from the url]] |
|||
This is what I used: |
|||
'''RewriteRule ^/mediawiki/ - [L]''' |
|||
Hi. Nice site, good job! |
|||
Hi! Nice site! |
|||
Good site! |
|||
= References = |
|||
http://www.doctaur.com/dtdocs/databases/mysql-manual/table-of-contents.html |
|||
http://dev.mysql.com/doc/mysql/en/index.html |
|||
Also see http://gentoo-wiki.com/HOWTO_Wiki |
Latest revision as of 22:50, 21 April 2012
This page has been moved to Manual:Running MediaWiki on Gentoo Linux on mediawiki.org.
Any modifications or additions to this page should be made on mediawiki.org instead. |
Imported with full page histories. Titoxd(?!?) 03:40, 4 May 2007 (UTC)