Cara Install WordPress di Ubuntu 24.04 – WordPress adalah salah satu platform blogging dan sistem manajemen konten (CMS) yang paling populer di dunia. WordPress dikembangkan dengan bahasa pemrograman PHP dan basis data MySQL.
WordPress juga dapat digunakan untuk membuat situs web, blog, dan aplikasi web. WordPress memungkinkan pengguna untuk mengelola konten mereka dengan mudah, dengan antarmuka yang intuitif dan mudah digunakan.
Baca Juga : Cara Mengamankan Server Ubuntu dari Peretas
Sebelum memulai proses instalasi, pastikan sudah memiliki VPS dengan akses root. Untuk Server VPS yang digunakan pada tutorial kali ini adalah sesuai judul, yaitu Ubuntu 24.04 LTS. Jika Anda menggunakan VPS Ubuntu versi 22.04 atau 20.04, Tutorial ini masih bisa Anda ikuti. Pastikan Juga sudah mempointing IP Publik VPS ke domain yang akan digunakan.
Langkah wajib yang harus dilakukan sebelum menginstall sesuatu di server adalah update dulu servernya. Untuk mengupdate server, bisa menggunakan perintah berikut :
sudo apt update && sudo apt upgrade -y
Mengubah Timezone
Atur timezone agar sesuai dengan waktu tempat tinggal Anda sekarang. Hal ini berguna agar waktu di server mudah untuk dibaca, terutama ketika membaca log server atau mengatur penjadwalan otomatis seperti cronjob. Di sini saya memilih Asia/Jakarta karena timezone saya berada di Waktu Indonesia Barat.
sudo dpkg-reconfigure tzdata
Setelah proses update server selesai, langkah selanjutnya adalah menginstall webserver. Pada tutorial kali ini akan menggunakan Nginx sebagai web servernya. Untuk cara menginstall nginx adalah sebagai berikut :
sudo apt install -y nginx
Kemudian start service nginx dan enable agar berjalan otomatis setelah boot.
sudo systemctl start nginx
sudo systemctl enable nginx
Jika proses instalasi nginx telah selesai, search IP Publik VPS di browser addrees bar dan pastikan muncul halaman Welcome to Nginx seperti ini :
Jika halaman Welcome to Nginx! tidak muncul kemungkinan ada masalah pada firewall VPS. Masukkan perintah berikut untuk mengijinkan koneksi HTTP.
sudo iptables -I INPUT -p tcp --dport 80 -j ACCEPT
sudo iptables -I INPUT -p tcp --dport 443 -j ACCEPT
Refresh kembali browser Anda dan pastikan tampilan Welcome to Nginx muncul. Jika tampilan sudah muncul, proses menginstall apache webserver sudah selesai.
Langkah selanjutnya adalah menginstall database. Database yang akan digunakan pada tutorial kali ini adalah mariadb server. Untuk proses instalasinya adalah sebagai berikut :
sudo apt install -y mariadb-server mariadb-client
Setelah selesai, start dan enable service mariadb dan cek status mariadb dan pastikan statusnya active.
sudo service mariadb start
sudo systemctl enable mariadb
sudo service mariadb status
PHP yang akan digunakan adalah PHP versi 8.3. Selain itu, kita juga akan menginstall ekstensi php yang dibutuhkan untuk menjalankan wordpress. Berikut perintahnya :
Pertama install paket dependensi untuk instalasi PHP8.3.
sudo apt update
sudo apt install -y lsb-release gnupg2 ca-certificates apt-transport-https software-properties-common
Kemudian tambahkan APT Repository Sury PHP
sudo add-apt-repository ppa:ondrej/php
Lalu jalankan apt update
sudo apt update
Terakhir install PHP 8.3 dan juga ekstensi yang dibutuhkan untuk menjalankan wordpress.
sudo apt install -y php8.3 php8.3-fpm php8.3-bcmath php8.3-xml php8.3-mysql php8.3-zip php8.3-intl php8.3-ldap php8.3-gd php8.3-cli php8.3-bz2 php8.3-curl php8.3-mbstring php8.3-imagick php8.3-tokenizer php8.3-opcache php8.3-redis php8.3-cgi
Pada tutorial kali ini Anda akan menginstall wordpress dari source code, pertama download file master wordpress terbaru, kemudian ekstrak dan mulai proses instalasinya di browser.
Pertama unduh File Master WordPress versi terbaru
sudo apt install wget
cd ~
wget http://wordpress.org/latest.tar.gz
Ekstrak master file wordpress
sudo tar -xzvf latest.tar.gz
Kemudian pindahkan hasil ekstrakan tadi ke document root /var/www
sudo mv wordpress /var/www/wordpress
Lalu buat file wp-config.php. File ini berisi konfigurasi dasar wordpress seperti konfigurasi database, dll.
sudo cp /var/www/wordpress/wp-config-sample.php wp-config.php
Terakhir ubah kepemilikan dan hak akses foldernya.
sudo chown -R www-data:www-data /var/www/wordpress/
sudo chmod -R 755 /var/www/wordpress/
Database yang digunakan adalah mariadb. Untuk wordpress, Anda perlu membuat database, membuat user database dan terakhir memberikan hak akses ke user ke database.
Pertama masuk dulu ke console mariadb.
sudo mariadb
Kemudian buat database baru.
CREATE DATABASE wordpress_db;
Selanjutnya buat user baru dan passwordnya.
create user wordpressuser@localhost identified by 'your-password';
Lalu buat agar user baru tadi bisa mengakses database yang sudah dibuat di atas.
grant all privileges on wordpress_db.* to wordpressuser@localhost identified by 'your-password';
Terakhir flush privileges dan keluar dari console mariadb.
FLUSH PRIVILEGES;
EXIT;
Kurang lebih untuk proses di atas adalah seperti ini :
Virtualhost ini yang akan digunakan untuk menyeting nama domain website, menyeting lokasi folder website dan mengatur konfigurasi keamanan lainya.
Untuk membuat virtualhost sendiri caranya adalah sebagai berikut :
Buat file conf di /etc/nginx/sites-available menggunakan text editor nano atau vim.
sudo nano /etc/nginx/sites-available/wordpress.conf
Kemudian isikan dengan kode baris di bawah ini :
server {
listen 80;
server_name namadomain.com www.namadomain.com;
root /var/www/wordpress;
index index.php;
autoindex off;
# Access log
access_log /var/log/nginx/namadomain-access.log combined;
# Error log
error_log /var/log/nginx/namadomain-error.log;
# Additional Configuration
client_max_body_size 10M;
client_body_buffer_size 128k;
client_body_timeout 10;
client_header_timeout 10;
keepalive_timeout 5;
location / {
try_files $uri $uri/ /index.php?$args;
}
# Block PHP Direct Access to Upload and Includes Directory
location ~* /(?:wp-content/uploads|wp-includes)/.*\.php$ {
deny all;
}
# Block Access to xmlrpc
location = /xmlrpc.php {
deny all;
}
location ~ \.php$ {
try_files $uri =404;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_pass unix:/var/run/php/php8.3-fpm.sock;
fastcgi_index index.php;
}
location = /favicon.ico {
log_not_found off;
access_log off;
expires max;
}
location = /robots.txt {
log_not_found off;
access_log off;
}
# Disable Access to Hidden File
location ~ /\. {
deny all;
}
# Disable Execute PHP File on Upload Directory
location /wp-content/uploads/ {
location ~ \.php$ {
deny all;
}
}
# Header Security
add_header X-Content-Type-Options nosniff;
add_header X-XSS-Protection "1; mode=block";
add_header X-Permitted-Cross-Domain-Policies none;
add_header X-Frame-Options "SAMEORIGIN";
# Gzip Compression
gzip on;
gzip_vary on;
gzip_min_length 1000;
gzip_comp_level 5;
gzip_types application/json text/css application/x-javascript application/javascript image/svg+xml;
gzip_proxied any;
# Cache-Control
location ~* \.(jpg|jpeg|gif|png|webp|svg|woff|woff2|ttf|css|js|ico|xml)$ {
access_log off;
log_not_found off;
expires 360d;
}
# Rest API
location ~ ^/wp-json/ {
rewrite ^/wp-json/(.*?)$ /?rest_route=/$1 last;
}
}
Jika sudah, symlinks vhost ke directory /etc/nginx/sites-enabled
sudo ln -s /etc/nginx/sites-available/wordpress.conf /etc/nginx/sites-enabled/
Selanjutnya, test kode konfigurasi virtualhost di atas dengan perintah berikut :
Pastikan hasilnya “OK”.
sudo nginx -t
Terakhir restart service nginx untuk memuat perubahan.
sudo systemctl reload nginx
Langkah wajib yang harus dilakukan selanjutnya adalah mempointing dns, yaitu mengarahkan domain ke ip address server. Untuk mempointing domain, Anda bisa masuk ke panel domain manajemen tempat Anda membeli domain.
Atau jika Anda menggunakan cloudflare, bisa mempointing domain seperti gambar di bawah ini. Saya rasa untuk domain kontrol selain cloudflare, cara pointingnya sama saja. Tinggal masukkan IP Publik server VPS ke A record domain.
SSL ini akan menjadikan website Anda menjadi HTTPS. SSL yang akan digunakan adalah Lets Encrypt dan menggunakan certbot untuk proses instalasinya. Berikut cara instalasinya :
Pertama install dulu paket certbot dan python certbot nginx.
sudo apt install -y certbot python3-certbot-nginx
Kemudian jalankan perintah di bawah ini untuk mendapatkan sertifikat SSL dari Let’s Encrypt.
sudo certbot --nginx --agree-tos --redirect --email [email protected] -d awanservers.online,www.awanservers.online
--email
dengan email aktif-d
dengan nama domain websitePastikan proses request SSLnya berhasil seperti ini :
Langkah selanjutnya adalah proses instalasi, masukkan domain ke address bar browser. Kemudian akan muncul halaman instalasi wordpress. Ikuti saja proses instalasinya sampai selesai.
Silahkan pilih bahasa untuk proses instalasi wordpress, Jika sudah tekan Continue
Kemudian masukkan database sesuai yang sudah Anda buat pada langkah nomor 6 di atas tadi.
Setelah database dan user sudah dimasukkan. Tekan Submit dan mulai proses instalasi
Akan muncul halaman seperti di bawah ini. Silahkan isi Judul Web, username, dan password. Ingat baik-baik dan jangan diisi asal-asalan. Jika sudah klik Install WordPress
Instlasi sukses dan silahkan klik login. Masukkan username dan password yang sudah di atur tadi.
Proses Instalasi Selesai
Mengubah Ukuran Upload File
Untuk mengubah besarnya ukuran file yang bisa diupload ke website kita bisa menggunakan perintah berikut
sudo sed -i 's/^max_execution_time = .*/max_execution_time = 1500/' /etc/php/8.3/fpm/php.ini
sudo sed -i 's/^max_input_time = .*/max_input_time = 1500/' /etc/php/8.3/fpm/php.ini
sudo sed -i 's/^memory_limit = .*/memory_limit = 512M/' /etc/php/8.3/fpm/php.ini
sudo sed -i 's/^post_max_size = .*/post_max_size = 10M/' /etc/php/8.3/fpm/php.ini
sudo sed -i 's/^upload_max_filesize = .*/upload_max_filesize = 10M/' /etc/php/8.3/fpm/php.ini
Setelah itu, restart service PHP-FPM
sudo systemctl restart php8.3-fpm
Jadi begitulah cara install wordpress di ubuntu 24.04 dengan LEMP Stack. Jika ada pertanyaan bisa menulis komentar di bawah atau menghubungi kami melalui halaman Contact.
Website WP org : WordPress.org