Difference between revisions of "Install MediaWiki as Wikipedia in Linux CentOS 7"
| Line 51: | Line 51: | ||
=== Step 4 : Install PHPMyAdmin === | === Step 4 : Install PHPMyAdmin === | ||
[[Install PHPMyAdmin on CentOS 7]] --> https://www.hostinger.com/tutorials/how-to-install-phpmyadmin-on-centos-7/ | [[Install PHPMyAdmin on CentOS 7]] --> https://www.hostinger.com/tutorials/how-to-install-phpmyadmin-on-centos-7/ | ||
| + | |||
| + | In these step, we'll install EPEL release, PHPMyAdmin, and configure the configuration file. | ||
| + | |||
| + | <pre> | ||
| + | [root@qemu01 ~]# yum install epel-release | ||
| + | [root@qemu01 ~]# yum install phpmyadmin | ||
| + | [root@qemu01 ~]# vi /etc/httpd/conf.d/phpMyAdmin.conf | ||
| + | </pre> | ||
| + | |||
| + | In phpMyAdmin.conf file, we need to change 127.0.0.1 to our subnet ip address. | ||
| + | |||
| + | <pre> | ||
| + | ... | ||
| + | |||
| + | <Directory /usr/share/phpMyAdmin/> | ||
| + | AddDefaultCharset UTF-8 | ||
| + | |||
| + | <IfModule mod_authz_core.c> | ||
| + | # Apache 2.4 | ||
| + | <RequireAny> | ||
| + | Require ip 10.129.50.0/24 | ||
| + | Require ip ::1 | ||
| + | </RequireAny> | ||
| + | </IfModule> | ||
| + | <IfModule !mod_authz_core.c> | ||
| + | # Apache 2.2 | ||
| + | Order Deny,Allow | ||
| + | Deny from All | ||
| + | Allow from 10.129.50.0/24 | ||
| + | Allow from ::1 | ||
| + | </IfModule> | ||
| + | </Directory> | ||
| + | |||
| + | <Directory /usr/share/phpMyAdmin/setup/> | ||
| + | <IfModule mod_authz_core.c> | ||
| + | # Apache 2.4 | ||
| + | <RequireAny> | ||
| + | Require ip 10.129.50.0/24 | ||
| + | Require ip ::1 | ||
| + | </RequireAny> | ||
| + | </IfModule> | ||
| + | <IfModule !mod_authz_core.c> | ||
| + | # Apache 2.2 | ||
| + | Order Deny,Allow | ||
| + | Deny from All | ||
| + | Allow from 10.129.50.0/24 | ||
| + | Allow from ::1 | ||
| + | </IfModule> | ||
| + | </Directory> | ||
| + | |||
| + | ... | ||
| + | </pre> | ||
== Prepare MediaWiki Sources == | == Prepare MediaWiki Sources == | ||
Revision as of 16:07, 9 August 2019
Contents
System Requirements
MediaWiki requires PHP 5.5.9+ and either MySQL 5.0.2+, MariaDB, or one of the other three possible stores.
Setup Web Server and Database
Step 1 : Install Apache Web Server
Install Apache Web Server, PHP & MySQL on CentOS 7 --> https://hostadvice.com/how-to/how-to-install-lamp-stack-on-centos-7/
Update the server. Install Apache web server. Enable and start it. Then test to access it from a web browser.
[root@qemu01 ~]# yum update [root@qemu01 ~]# yum install httpd [root@qemu01 ~]# systemctl enable httpd.service [root@qemu01 ~]# systemctl start httpd.service
Step 2 : Install MariaDB Database
In this step, we just install MariaDB database. Start it. And setup security.
[root@qemu01 ~]# yum install mariadb-server mariadb [root@qemu01 ~]# systemctl enable mariadb.service [root@qemu01 ~]# systemctl start mariadb [root@qemu01 ~]# mysql_secure_installation
In MariaDB securing steps, we have to provide the answers below for simplicity.
Set root password? [Y/n] Y New password: Enter your password here Re-enter new password: repeat your password Remove anonymous users? [Y/n] Y Disallow root login remotely? [Y/n] Y Remove test database and access to it? [Y/n] Y Reload privilege tables now? [Y/n] Y
Step 3 : Install PHP, PHP-MySQL, & PHP-MBString
PHP is a general-purpose server-side scripting language.
[root@qemu01 ~]# yum install php php-mysql php-mbstring [root@qemu01 ~]# systemctl restart httpd.service
Step 4 : Install PHPMyAdmin
Install PHPMyAdmin on CentOS 7 --> https://www.hostinger.com/tutorials/how-to-install-phpmyadmin-on-centos-7/
In these step, we'll install EPEL release, PHPMyAdmin, and configure the configuration file.
[root@qemu01 ~]# yum install epel-release [root@qemu01 ~]# yum install phpmyadmin [root@qemu01 ~]# vi /etc/httpd/conf.d/phpMyAdmin.conf
In phpMyAdmin.conf file, we need to change 127.0.0.1 to our subnet ip address.
...
<Directory /usr/share/phpMyAdmin/>
AddDefaultCharset UTF-8
<IfModule mod_authz_core.c>
# Apache 2.4
<RequireAny>
Require ip 10.129.50.0/24
Require ip ::1
</RequireAny>
</IfModule>
<IfModule !mod_authz_core.c>
# Apache 2.2
Order Deny,Allow
Deny from All
Allow from 10.129.50.0/24
Allow from ::1
</IfModule>
</Directory>
<Directory /usr/share/phpMyAdmin/setup/>
<IfModule mod_authz_core.c>
# Apache 2.4
<RequireAny>
Require ip 10.129.50.0/24
Require ip ::1
</RequireAny>
</IfModule>
<IfModule !mod_authz_core.c>
# Apache 2.2
Order Deny,Allow
Deny from All
Allow from 10.129.50.0/24
Allow from ::1
</IfModule>
</Directory>
...
Prepare MediaWiki Sources
Download MediaWiki 1.27.0
The last stable MediaWiki can be downloaded from MediaWiki.
wget https://releases.wikimedia.org/mediawiki/1.27/mediawiki-1.27.0.tar.gz
Put Media Wiki in Web Server
As example, if we're using Centos 7, the web server path is in /var/www/html/.
mv mediawiki-1.27.0.tar.gz /var/www/html/
Extract the File
Extract the tar file and rename it with your wiki name, as example named with wikipedia.
tar xvzf mediawiki-1.27.0.tar.gz
mv /var/www/html/mediawiki-1.27.0 /var/www/html/wikipedia
Run the MediaWiki Installation
Open MediaWiki index.php page at http://[web_server_address]/wikipedia/index.php and follow the installation requirement there.
Troubleshooting
Problem 1 : LocalSettings.php File Not Readable
Solution : run restorecon command into the wikipedia website folder.
[root@qemu01 ~]# restorecon -r /var/www/html/wikipedia/
Problem 2 : First Login Error (Session Hijacking Protection)
Solution : Change $wgMainCacheType from CACHE_ACCEL to CACHE_ANYTHING as suggested in LocalSettings.php file.
[root@qemu01 ~]# cd /var/www/html/wikipedia [root@qemu01 wikipedia]# vi LocalSettings.php
... ## Shared memory settings #$wgMainCacheType = CACHE_ACCEL; $wgMainCacheType = CACHE_ANYTHING; $wgMemCachedServers = []; ...
Problem 3 : Upload File Error (LocalFileLockError)
Solution : Run setenforce 0 script and then try again.
[root@qemu01 ~]# sudo setenforce 0