MediaWiki:Installasi on Ubuntu 20.04 (Nginx): Difference between revisions

No edit summary
 
(9 intermediate revisions by the same user not shown)
Line 1: Line 1:
==Step 1: Downloading MediaWiki==
__NOTOC__
===Step 1: Downloading MediaWiki===
*Download the latest stable version of MediaWiki:
*Download the latest stable version of MediaWiki:
  wget <nowiki>https://releases.wikimedia.org/mediawiki/1.36/mediawiki-1.36.2.tar.gz</nowiki>
  wget <nowiki>https://releases.wikimedia.org/mediawiki/1.36/mediawiki-1.36.2.tar.gz</nowiki>
Line 21: Line 22:
  sudo composer install --no-dev
  sudo composer install --no-dev


*Note that MediaWiki currently doesn’t support PHP8.0. If you have installed PHP8.0 on your Ubuntu server, then you should run sudo update-alternatives --config php command to set PHP7.4 as the default version.
<blockquote>
'''Note:''' That MediaWiki currently doesn’t support PHP8.0. If you have installed PHP8.0 on your Ubuntu server, then you should run sudo update-alternatives --config php command to set PHP7.4 as the default version.
</blockquote>


*Once all dependencies are installed, run the following command to set web server user (www-data) as the owner of this directory.
*Once all dependencies are installed, run the following command to set web server user (www-data) as the owner of this directory.
Line 27: Line 30:
  sudo chown www-data:www-data /var/www/mediawiki/ -R
  sudo chown www-data:www-data /var/www/mediawiki/ -R


==Step 2: Creating a Database==
===Step 2: Creating a Database===
*Log into MariaDB server with the command below.
*Log into [[MariaDB]] server with the command below.
  sudo mysql -u root
  sudo mysql -u root


Line 42: Line 45:
  exit;
  exit;


==Step 3: Create Apache Virtual Host or Nginx Config File for MediaWiki==
===Step 3: Create Apache Virtual Host or Nginx Config File for MediaWiki===
===Nginx===
===Nginx===
*If you use Nginx web server, create a server block file for MediaWiki under <code>/etc/nginx/conf.d/</code> directory.
*If you use Nginx web server, create a server block file for MediaWiki under <code>/etc/nginx/conf.d/</code> directory.
Line 82: Line 85:
*Save and close the file. Then test Nginx configuration.
*Save and close the file. Then test Nginx configuration.
  sudo nginx -t
  sudo nginx -t
'''Output sample'''
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful


*If the test is successful, reload Nginx web server.
*If the test is successful, reload Nginx web server.
  sudo systemctl reload nginx
  sudo systemctl reload nginx


==Step 4: Enabling HTTPS==
===Step 4: Enabling HTTPS===
*To encrypt the HTTP traffic, we can enable HTTPS by installing a free TLS certificate issued from Let’s Encrypt. Run the following command to install Let’s Encrypt client (certbot) on Ubuntu 20.04 server.
*To encrypt the HTTP traffic, we can enable HTTPS by installing a free TLS certificate issued from Let’s Encrypt. Run the following command to install Let’s Encrypt client (certbot) on Ubuntu 20.04 server.
  sudo apt install certbot
  sudo apt install certbot
Line 97: Line 104:


'''Where'''
'''Where'''
*--nginx: Use the nginx plugin.
*<code>--nginx</code>: Use the nginx plugin.
*--apache: Use the Apache plugin.
*<code>--apache</code>: Use the Apache plugin.
*--agree-tos: Agree to terms of service.
*<code>--agree-tos</code>: Agree to terms of service.
*--redirect: Force HTTPS by 301 redirect.
*<code>--redirect</code>: Force HTTPS by 301 redirect.
*--hsts: Add the Strict-Transport-Security header to every HTTP response. Forcing browser to always use TLS for the domain. Defends against SSL/TLS Stripping.
*<code>--hsts</code>: Add the Strict-Transport-Security header to every HTTP response. Forcing browser to always use TLS for the domain. Defends against SSL/TLS Stripping.
*--staple-ocsp: Enables OCSP Stapling. A valid OCSP response is stapled to the certificate that the server offers during TLS.
*<code>--staple-ocsp</code>: Enables OCSP Stapling. A valid OCSP response is stapled to the certificate that the server offers during TLS.


*The certificate should now be obtained and automatically installed.
*The certificate should now be obtained and automatically installed.
==Terkait==
*[[MariaDB]]
*[[Server]]
*[[MediaWiki]]
[[Category:Tutorial]]
[[Category:CMS]]
[[Category:Server]]