Untuk mendapatkan kontrol penuh atas lingkungan situs web Anda, Anda dapat menerapkan stack LNMP secara manual dan menginstal WordPress. Hal ini memungkinkan Anda membangun blog dan situs portal secara fleksibel.
Persiapan
Aktifkan akses publik: Tetapkan alamat IP publik statis ke instans atau kaitkan alamat IP elastis (EIP) dengan instans tersebut.
Tambahkan aturan security group: Pada arah inbound untuk security group instans, izinkan akses TCP pada port 22 dan 80.
Prosedur
Topik ini menggunakan Alibaba Cloud Linux 3 dan WordPress 6.4.4 sebagai contoh.
Langkah 1: Terapkan lingkungan LNMP
Login ke instans ECS.
Buka ECS console - Instances. Di bilah navigasi atas, pilih wilayah dan resource group yang dituju.
Buka halaman detail instans target. Klik Connect dan pilih Workbench. Ikuti petunjuk di halaman untuk login ke terminal.
Instal komponen inti seperti Nginx, MySQL, dan PHP.
WordPress bergantung pada versi PHP dan MySQL tertentu. Ketidaksesuaian versi akan menyebabkan instalasi WordPress gagal. Untuk informasi lebih lanjut mengenai dependensi, lihat WordPress Compatibility.
Langkah 2: Buat database WordPress
Buat database dan pengguna database khusus untuk WordPress.
Login ke MySQL. Gunakan password database yang Anda tetapkan saat menerapkan lingkungan LNMP.
mysql -u root -pBuat database dan pengguna, lalu berikan izin.
Catat nama database, username, dan password untuk digunakan nanti.
-- Buat database bernama WORDPRESS_DATABASE CREATE DATABASE WORDPRESS_DATABASE; -- Buat pengguna khusus WORDPRESS_USER dan tetapkan password. Kami menyarankan Anda menetapkan password kuat yang terdiri dari minimal 12 karakter serta mencakup huruf kapital, huruf kecil, angka, dan karakter khusus. CREATE USER '<span class="var-span" contenteditable="true" data-var="WORDPRESS_USER">WORDPRESS_USER'</span>@'localhost' IDENTIFIED BY '<span class="var-span" contenteditable="true" data-var="WORDPRESS_PASSWORD">WORDPRESS_PASSWORD'</span>; -- Berikan pengguna ini semua hak istimewa pada database wordpress GRANT ALL PRIVILEGES ON wordpress.* TO '<span class="var-span" contenteditable="true" data-var="WORDPRESS_USER">WORDPRESS_USER'</span>@'localhost'; -- Muat ulang hak istimewa agar pengaturan diterapkan FLUSH PRIVILEGES; -- Keluar dari MySQL EXIT;Secara default, plugin validasi password diinstal pada MySQL 5.7 dan versi yang lebih baru. Password harus terdiri dari 8 hingga 30 karakter serta mencakup huruf kapital, huruf kecil, angka, dan karakter khusus. Karakter khusus yang didukung meliputi
()` ~!@#$%^&*-+=|{}[]:;‘<>,.?/.
Langkah 3: Unduh dan konfigurasi WordPress
Buka direktori root situs web Nginx dan unduh versi Bahasa Tiongkok WordPress 6.4.4.
Untuk menginstal versi Bahasa Inggris WordPress, ganti URL dengan
https://wordpress.org/wordpress-6.4.4.zip. Pada langkah-langkah selanjutnya, Anda juga harus mengganti nama paket terkompresi menjadiwordpress-6.4.4.zip.sudo cd /usr/share/nginx/html sudo wget https://cn.wordpress.org/wordpress-6.4.4-zh_CN.zipInstal perintah
unzipdan ekstrak paket WordPress.sudo yum install unzip -y sudo unzip wordpress-6.4.4-zh_CN.zipSalin file
wp-config-sample.phpkewp-config.phpdan simpan file aslinya sebagai cadangan.cd /usr/share/nginx/html/wordpress sudo cp wp-config-sample.php wp-config.phpEdit file konfigurasi. Masukkan informasi database yang Anda buat di Langkah 2, termasuk nama database, username, dan password.
sudo vim wp-config.phpTekan tombol
iuntuk memasuki mode edit./** Nama database untuk WordPress */ define('DB_NAME', '<span class="var-span" contenteditable="true" data-var="WORDPRESS_DATABASE">WORDPRESS_DATABASE'</span>); /** Username database MySQL */ define('DB_USER', '<span class="var-span" contenteditable="true" data-var="WORDPRESS_USER">WORDPRESS_USER'</span>); /** Password database MySQL */ define('DB_PASSWORD', '<span class="var-span" contenteditable="true" data-var="WORDPRESS_PASSWORD">WORDPRESS_PASSWORD'</span>); /** Hostname MySQL */ define('DB_HOST', 'localhost');Setelah melakukan perubahan, tekan tombol
Esc, ketik:wq, lalu tekan tombolEnteruntuk menyimpan file dan keluar.
Langkah 4: Konfigurasi Nginx
Ubah konfigurasi situs default Nginx agar dapat menangani permintaan PHP dengan benar.
Buat cadangan konfigurasi default dan buat file konfigurasi Nginx baru.
sudo mv /etc/nginx/conf.d/default.conf /etc/nginx/conf.d/default.conf.bak sudo vim /etc/nginx/conf.d/default.confUbah file konfigurasi Nginx.
Tekan tombol
iuntuk memasuki mode edit. Di blokserverdanlocation ~ .php$, ganti konten setelahrootdengan direktori root WordPress. Dalam contoh ini, direktori root WordPress adalah/usr/share/nginx/html/wordpress.
Tekan tombol
Esc, ketik:wq, lalu tekan tombolEnteruntuk menyimpan dan keluar dari file konfigurasi.Periksa sintaks konfigurasi.
Jika muncul pesan
syntax is ok, Anda dapat merestart Nginx.sudo nginx -tJika terjadi kesalahan sintaks, Anda dapat menjalankan
sudo mv /etc/nginx/conf.d/default.conf.bak /etc/nginx/conf.d/default.confuntuk memulihkan konfigurasi default.Restart Nginx untuk menerapkan konfigurasi.
sudo systemctl restart nginx
Langkah 5: Instal dan login ke situs web WordPress
Setelah menyelesaikan konfigurasi sisi server, Anda harus menggunakan browser untuk menginisialisasi WordPress.
Pada mesin lokal Anda, buka browser dan akses
http://<Alamat IP publik instans ECS>untuk membuka halaman instalasi WordPress.Masukkan informasi dasar situs web, termasuk Site Title, Username administrator, Password, dan Your Email. Lalu, klik Install WordPress.
Setelah instalasi selesai, klik Log In. Gunakan username dan password yang Anda tetapkan pada langkah sebelumnya untuk login.
Login yang berhasil menunjukkan bahwa situs web WordPress telah dibangun dan berjalan. Untuk informasi lebih lanjut, lihat dokumentasi resmi WordPress.
Langkah selanjutnya
Kelola file menggunakan FTP
Untuk mengunggah tema atau plugin WordPress menggunakan FTP, Anda harus membangun situs FTP pada instans Linux.
Lakukan resolusi nama domain dan konfigurasi HTTPS
Mengakses situs web Anda menggunakan alamat IP tidak profesional dan tidak aman. Kami menyarankan Anda mengaitkan nama domain dengan situs web Anda dan mengaktifkan enkripsi HTTPS.
Daftarkan nama domain dan ajukan pendaftaran ICP
Jika Anda belum memiliki nama domain, Anda dapat mendaftarkan nama domain di Alibaba Cloud.
Jika situs web Anda dihosting di server Alibaba Cloud di Daratan Tiongkok, Anda harus mengajukan pendaftaran ICP untuk nama domain tersebut.Untuk informasi lebih lanjut, lihat ICP filing process.
Arahkan nama domain ke alamat IP publik instans ECS.
Ganti alamat IP publik instans dengan nama domain baru.
Sambungkan ke instans secara remote dan login ke database MySQL.
mysql -u root -pBeralih ke database WordPress dan tetapkan nama domain.
Ganti
public_ipdengan alamat IP publik instans dandomaindengan nama domain Anda.USE wordpress; UPDATE wp_options SET option_value = replace(option_value, 'http://PUBLIC_IP', 'http://DOMAIN') WHERE option_name = 'home' OR option_name = 'siteurl'; EXIT;
Konfigurasikan sertifikat SSL (HTTPS)
Menerapkan sertifikat SSL memungkinkan transfer data terenkripsi HTTPS untuk situs web Anda. Hal ini melindungi privasi pengguna serta meningkatkan kepercayaan browser dan peringkat SEO (Search Engine Optimization).
FAQ
Mengapa saya tidak dapat mengakses WordPress menggunakan alamat IP publik?
Periksa security group: Pastikan port 80 diizinkan dalam security group instans.
Periksa firewall: Pastikan firewall internal sistem operasi, seperti firewalld, tidak memblokir port 80.
Periksa status layanan: Pada instans ECS, jalankan
sudo systemctl status nginxdansudo systemctl status php-fpmuntuk memastikan layanan berada dalam statusactive (running).Periksa pendengaran port: Pastikan port 80 sedang didengarkan.
Untuk informasi lebih lanjut tentang cara memecahkan masalah ini, lihat Apa yang harus saya lakukan jika tidak dapat mengakses layanan yang diterapkan pada instans?.
Mengapa halaman tidak dapat diakses setelah saya mengatur permalink di WordPress?
Menjadikan situs web Anda statis membantu mesin pencari mengindeksnya. Sebelum mengatur permalink untuk situs WordPress Anda, Anda harus terlebih dahulu menetapkan aturan statis di server Nginx.
Sambungkan ke instans secara remote dan buka file konfigurasi Nginx.
sudo vim /etc/nginx/conf.d/default.confTekan tombol
iuntuk memasuki mode edit. Di bloklocation /, tambahkan kode berikut.try_files $uri $uri/ /index.php?$args;Tekan tombol
Esc, ketik:wq, lalu tekan tombolEnteruntuk menyimpan dan keluar dari file konfigurasi.Restart layanan Nginx untuk menerapkan konfigurasi.
sudo systemctl restart nginx
Mengapa saya diminta memasukkan kredensial login FTP atau diberi tahu bahwa direktori tidak dapat dibuat saat memperbarui WordPress atau mengunggah tema atau plugin?
Masalah ini dapat terjadi karena izin file konfigurasi WordPress, tema, atau plugin tidak mencukupi. Anda dapat mengikuti langkah-langkah berikut untuk mengatasinya.
Login ke instans ECS dan buka file konfigurasi WordPress.
sudo vim /usr/share/nginx/html/wordpress/wp-config.phpTekan tombol
iuntuk memasuki mode edit. Di bagian bawah file, tambahkan kode berikut.define("FS_METHOD","direct"); define("FS_CHMOD_DIR", 0777); define("FS_CHMOD_FILE", 0777);Tekan tombol
Esc, ketik:wq, lalu tekan tombolEnteruntuk menyimpan dan keluar dari file konfigurasi.Kembali ke dashboard WordPress dan refresh halaman. Hal ini seharusnya mengatasi masalah permintaan kredensial login FTP.
Jika masalah pembuatan direktori masih berlanjut, ubah pengguna yang memiliki izin pada direktori root situs web menjadi pengguna Nginx
nginx.sudo chown -R nginx /usr/share/nginx/html/wordpress
Bagaimana cara mengubah username dan password default database MySQL 5.7 dalam citra WordPress?
Sambungkan ke instans ECS secara remote dan login ke database MySQL.
mysql -u root -pBuka database
mysqldan lihat username.use mysql; select user from mysql.user;Ubah username dan password database.
Ubah username database menjadi username baru.
UPDATE user SET user='NEW_USER_NAME' WHERE user='USER_NAME';Sebagai contoh, untuk mengubah username dari
rootmenjadiadmin:UPDATE mysql.user SET user='admin' WHERE user='root';Ubah password pengguna database.
ALTER USER 'USER_NAME'@'localhost' IDENTIFIED BY 'PASSWORD';Sebagai contoh, untuk mengubah password pengguna
rootmenjadiPassword@2025!:ALTER USER 'root'@'localhost' IDENTIFIED BY 'Password@2025!';
Muat ulang hak istimewa untuk menerapkan perubahan, lalu keluar dari database MySQL.
FLUSH PRIVILEGES; EXIT;
Referensi
Untuk menerapkan WordPress di Docker, lihat Gunakan Docker Compose untuk menerapkan aplikasi.
Untuk membangun beberapa situs web pada satu instans ECS, lihat Gunakan Nginx untuk mengonfigurasi beberapa situs web.