Bagaimana Cara Menginstal WordPress di Linux Apache MySQL dan PHP stack?

WordPress adalah salah satu sistem Manajemen Konten yang umum digunakan di web. Hal ini ditulis dalam server web PHP seperti Apache sudah cukup untuk menjalankannya. WordPress mendukung MySQL dan MariaDB, tetapi MySQL banyak digunakan. Tutorial ini akan membantu Anda menjalankan WordPress menggunakan tumpukan LAMP (Linux, Apache, MySQL, PHP) di mesin Linux Anda (mungkin VPS).

Prasyarat:

  • Mesin Linux (Di sini menggunakan Ubuntu)
  • Akun pengguna sudo
  • Beberapa pengalaman baris perintah dasar
  • Sedikit pengalaman MySQL

Artikel ini mengasumsikan bahwa Anda sudah familiar dengan PHP, MySQL, dan WordPress.

Menginstal PHP: PHP (Hypertext Preprocessor) adalah bahasa yang digunakan untuk menulis WordPress. Anda dapat menginstal PHP menggunakan perintah di bawah ini. libapache2-mod-php dan php-mysql adalah library yang membantu PHP, Apache dan MySQL dengan lancar.

sudo apt install php libapache2-mod-php php-mysql

Untuk memverifikasi bahwa Anda telah berhasil menginstal PHP, ketik perintah di bawah ini:

php -v

// output should look like below content
PHP 7.4.3 (cli) (built: Oct  6 2020 15:47:56) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
    with Zend OPcache v7.4.3, Copyright (c), by Zend Technologies

Instal modul PHP tambahan seperti Curl, XML, XMLRPC untuk membantu memudahkan menjalankan WordPress

sudo apt install php-curl php-gd php-mbstring php-xml php-xmlrpc php-soap php-intl php-zip

Instalasi dan Konfigurasi Apache: Apache adalah salah satu web server yang paling banyak digunakan. Apache2 adalah versi terbaru dari server web. Anda dapat menginstal Apache menggunakan perintah di bawah ini:

sudo apt install apache2

Untuk memverifikasi bahwa Anda telah berhasil menginstal Apache, ketik perintah di bawah ini

apache2 -v

// output
Server version: Apache/2.4.41 (Ubuntu)

Kami akan mengkonfigurasi host virtual Apache untuk WordPress, kami akan membuat file conf baru wordpress.

sudo nano /etc/apache2/sites-available/wordpress.conf

Gunakan template di bawah ini untuk mengkonfigurasi ke file .htaccess, kita akan menginstal WordPress di /var/www/wordpress, jadi kita akan menggunakannya sebagai direktori.

<VirtualHost *:80>
   ServerName yourdomain.name
    <Directory /var/www/wordpress>
        AllowOverride All
        DirectoryIndex index.php
    </Directory>
</VirtualHost>

Sekarang aktifkan modul penulisan ulang Apache dan periksa sintaks konfigurasi Apache. Jika Anda telah menggunakan sintaks dengan benar, Anda akan mendapatkan sintaks yang benar.

sudo a2enmod rewrite
sudo apache2ctl configtest
.
// output
Syntax OK

Jika Anda mendapatkan kesalahan seperti di bawah ini sebelum Syntax OK, tidak apa-apa karena kami menggunakan localhost.

AH00558: Apache2: Tidak dapat dengan andal menentukan nama domain yang sepenuhnya memenuhi syarat server, menggunakan 127.0.0.1. Atur arahan ‘ServerName’ secara global untuk menyembunyikan pesan ini

Menginstal dan Mengkonfigurasi MySQL: MySQL adalah sistem manajemen basis data relasional sumber terbuka yang populer. Untuk menginstal MySQL Anda dapat menjalankan perintah di bawah ini, Anda juga dapat memverifikasi apakah MySQL berhasil diinstal atau tidak.

sudo apt install mysql-server
mysql -V

// output
mysql  Ver 8.0.25-0ubuntu0.20.04.1 for Linux on x86_64 ((Ubuntu))

Sekarang login ke MySQL dan ubah mysql-native-password

sudo mysql -u root
ALTER PENGGUNA ‘root’@’localhost’ DIIDENTIFIKASI DENGAN mysql_native_password OLEH ‘sandi aman’;
HAK ISTIMEWA;
KELUAR;

Sekarang login ke MySQL menggunakan pengguna root dengan kata sandi baru dan buat database baru untuk wordpress

BUAT DATABASE wordpress SET KARAKTER DEFAULT utf8 COLLATE utf8_unicode_ci;

Sekarang kita akan membuat pengguna MySQL baru dan Memberikan semua akses ke database WordPress ke pengguna wordpress baru

mysql> BUAT DATABASE wordpress SET KARAKTER DEFAULT utf8 COLLATE utf8_unicode_ci;

mysql> BUAT PENGGUNA ‘wordpressuser’@’%’ DIIDENTIFIKASI DENGAN mysql_native_password OLEH ‘sandi aman’;

mysql> HIBAH SEMUA DI wordpress.* KE ‘wordpressuser’@’%’;

mysql> HAK ISTIMEWA FLUSH;

mysql> KELUAR;

Mengunduh WordPress: Jika Anda menggunakan Ubuntu, Anda dapat langsung menginstal menggunakan APT dan Anda dapat melewati langkah ini

sudo apt install wordpress

Tapi kami akan langsung menginstal WordPress dari repositori WordPress

  • Pertama, kita akan mengunduh WordPress versi terbaru dari repositorinya (kita mengunduhnya ke dalam folder sementara sehingga paket yang diunduh dan file lain yang membantu dalam membangun WordPress tetapi tidak membantu saat sedang berjalan akan dihapus secara otomatis saat reboot).
  • Sekarang kita akan meng-unzip paket WordPress
cd /tmp
curl -O https://wordpress.org/latest.tar.gz
tar xzvf latest.tar.gz

Sekarang kita akan membuat file Apache .htaccess dan file konfigurasi WordPress dari contoh konfigurasi. Kami juga akan membuat direktori bernama “upgrade”, yang memastikan bahwa WordPress tidak akan mengalami masalah izin saat mencoba melakukan pembaruan pada perangkat lunaknya.

touch /tmp/wordpress/.htaccess
cp /tmp/wordpress/wp-config-sample.php /tmp/wordpress/wp-config.php
mkdir /tmp/wordpress/wp-content/upgrade

Sekarang kita akan menyalin direktori wordpress yang belum dibongkar ke /var/www untuk menjalankan Apache

sudo cp -a /tmp/wordpress/. /var/www/wordpress

Mengonfigurasi WordPress: Sekarang kita akan menyesuaikan file wordpress dan izin direktori. Pengguna dan grup “www-data” adalah pengguna yang menjalankan server web Apache, dan Apache harus dapat membaca dan menulis file WordPress untuk melayani situs web dan melakukan pembaruan otomatis.

  • Kita perlu memberikan izin 750 direktori wordpress yang berarti pengguna saat ini (www-data) dapat membaca, menulis, dan mengeksekusi, grup tidak dapat menulis, dan yang lain tidak dapat membaca, menulis, atau mengeksekusi.
  • Kita perlu memberikan file wordpress 640 izin yang berarti pengguna saat ini (www-data) dapat membaca, menulis, dan grup hanya dapat membaca dan yang lain tidak dapat membaca, menulis, atau mengeksekusi.
sudo chown -R www-data:www-data /var/www/wordpress
sudo find /var/www/wordpress/ -type d -exec chmod 750 {} ;
sudo find /var/www/wordpress/ -type f -exec chmod 640 {} ;

Sekarang kami akan membuat beberapa kunci aman untuk instalasi kami, Anda dapat membuat permintaan ke WordPress API, dan itu akan memberi Anda kunci, Jangan salin kunci ini pastikan Anda memiliki kunci Anda sendiri

curl -s https://api.wordpress.org/secret-key/1.1/salt/

// outputnya akan mirip dengan yang di bawah inidefine(‘AUTH_KEY’, ‘:BiuKIi%W7t)*FN.qf*q|+-W7}8f ‘);
define(‘SECURE_AUTH_KEY’, ‘7[Kh-{P#A~<PGMkIOHC#9Fta$XGemco5F8k}G66I[lXqD|`IZ8cyM2O>!NjtvW(o’);
define(‘LOGGED_IN_KEY’, ‘La{SEJ{$uI<6Txgv QqY4cxG]3+-r[Iqcx.IFxlfN.f/Yd?317zR*+Yt=*PMWM$(‘);
define(‘NONCE_KEY’, ‘U5pGQf.`J{.Hd~P/9Snw`V2+#<t+;>OTY!VOW[-aoruh;dhSUX]09xj*Odefine(‘AUTH_SALT’, ‘fmByAIfcEq&V}Xf,mF)!a09:-Q$R^/:79!k|VU)|C7|(>;`{N(4ZHg O)n’);
define(‘SECURE_AUTH_SALT’, ‘s5N%EIR(eM@tlg;M%L-+F#:<|r_x5-]Ix.&eYN)ya5ktoWLE+H~zUGkX#HceO/;H');
define(‘LOGGED_IN_SALT’, ‘EGcaE`=DAh7lv*klFyV0VLy5<@af_*–3otD$3:^;z~C(f^JB[C0T;`yqE)2@y${‘);
define(‘NONCE_SALT’, ‘rP1%&ojrP0XLRuQ1AS#@u}#2-Q+)5ftKeJpWC$oxD]?&3}|+n2Gt{1$`kZbSW`-q’);

Sekarang buka file konfigurasi WordPress dan tambahkan kunci ini bersama dengan detail database, kami telah menyiapkan untuk wordpress. Di bawah ini adalah contoh file konfigurasi-

sudo nano /var/www/wordpress/wp-config.php

PHP

<?php

 

   

define( 'DB_NAME', 'wordpress' );

 

define( 'DB_USER', 'wordpressuser' );

 

define( 'DB_PASSWORD', 'wordpress' );

 

define( 'DB_HOST', 'localhost' );

 

    

define( 'DB_CHARSET', 'utf8' );

 

    

define( 'DB_COLLATE', '' );

 

 

 

 

 

 

 

 

 

 

 

 

define('AUTH_KEY',         ':BiuKIi%W7<p?4Jm}`1XTJOw!cQBKxcOt]DylUDyO$BB<>t)*FN.qf*q|+-W7}8f');

define('SECURE_AUTH_KEY''7[Kh-{P#A~<PGMkIOHC#9Fta$XGemco5F8k}G66I[lXqD|`IZ8cyM2O>!NjtvW(o');

define('LOGGED_IN_KEY',    'La{SEJ{$uI<6Txgv QqY4cxG]3+-r[Iqcx.IFxlfN.f/Yd?317zR*+Yt=*PMWM$(');

define('NONCE_KEY',        'U5pGQf.`J{.Hd~P/9Snw`V2+#<t+;>OTY!VOW[-aoruh;dhSUX]09xj*O);

define('AUTH_SALT',        'fmByAIfcEq&V}Xf,mF)!a09:-Q$R^/:79!k|<pEL@>VU)|C7|(>;`{N(4ZHg O)n');

define('SECURE_AUTH_SALT', 's5N%EIR(eM@tlg;M%L-+F#:<|r_x5-]Ix.&eYN)ya5ktoWLE+H~zUGkX#HceO/;H');

define('LOGGED_IN_SALT',   'EGcaE`=DAh7lv*klFyV0VLy5<@af_*--3otD$3:^;z~C(f^JB[C0T;`yqE)2@y${');

define('NONCE_SALT',       'rP1%&ojrP0XLRuQ1AS#@u}#2-Q+)5ftKeJpWC$oxD]?&3}|+n2Gt{1$`kZbSW`-q');

 

 

 

 

 

 

 

 

 

$table_prefix = 'blog_';

 

 

 

 

 

 

 

 

 

 

 

 

 

 

define( 'WP_DEBUG', false );

 

 

if ( ! defined( 'ABSPATH' ) ) {

    define( 'ABSPATH', __DIR__ . '/' );

}

 

require_once ABSPATH . 'wp-settings.php';

?>

  • Ubah nama database, pengguna database, dan kata sandi ke nilai yang telah kita buat saat mengkonfigurasi MySQL.
  • Ubah kunci garam dari kunci yang Anda terima saat diminta wordpress
  • Mengubah awalan tabel dari "wp_" menjadi "blog_" yang opsional

Menyiapkan WordPress: Sekarang mulai server Apache2 dan kunjungi instalasi WordPress

sudo service apache2 start

// visit 127.0.0.1/wordpress

Sekarang pilih bahasa pengguna

Pilih bahasa

Sekarang konfigurasikan detail pengguna WordPress (Ini akan menjadi pengguna admin default)

Detail pengguna dan situs

  • Berikan WordPress Anda Nama Situs
  • Sekarang pilih nama pengguna untuk pengguna
  • Sekarang berikan kata sandi
  • Berikan email yang valid (Email di gambar) tidak boleh digunakan di Produksi).
  • Visibilitas mesin pencari berarti memberi admin situs untuk mengizinkan mesin pencari mengindeks situs.

Setelah Anda mengklik "Instal WordPress", WordPress akan diinstal, dan Anda akan mendapatkan layar sukses.

WordPress berhasil diinstal

Sekarang, login ke dashboard WordPress menggunakan detail login Anda

Masuk ke WordPress

Setelah login, Anda dapat melihat dashboard WordPress

Dasbor WordPress

Sekarang Anda dapat melihat situs WordPress Anda dengan mengunjungi URL-nya

http://127.0.0.1/wordpress

WordPress berhasil dijalankan