WordPress dengan Nginx, instal CMS ini secara lokal di Ubuntu 20.04

tentang menginstal wordpress dengan nginx

Pada artikel berikutnya kita akan melihat bagaimana kita bisa instal WordPress dengan Nginx di Ubuntu 20.04. Ini CMS adalah salah satu sistem pengelolaan konten sumber terbuka yang paling banyak digunakan. Ini memberdayakan sekitar 60 juta situs web. Itu ditulis dalam PHP dan menggunakan MariaDB / MySQL sebagai database untuk menyimpan informasi.

Pada baris berikut kita akan melihat cara menginstal WordPress secara lokal dengan Nginx di Ubuntu 20.04. Untuk alasan ini, sebelum melanjutkan akan diperlukan menginstal tumpukan perangkat lunak LEMP di Ubuntu 20.04 untuk memulai.

Instal WordPress dengan Nginx di Ubuntu 20.04

Instal ekstensi PHP

Ekstensi berikut diperlukan agar WordPress dapat berjalan di Ubuntu 20.04. Untuk menginstalnya kita hanya perlu membuka terminal (Ctrl + Alt + T) dan menjalankan:

instalasi paket php

sudo apt update && sudo apt install php-dom php-simplexml php-ssh2 php-xml php-xmlreader php-curl php-exif php-ftp php-gd php-iconv php-imagick php-json php-mbstring php-posix php-sockets php-tokenizer

Buat Blok Server Nginx untuk WordPress

Kami akan membuat blok server Nginx untuk instalasi WordPress. Blok server ini membutuhkan nama domain, nomor port, akar dokumen, lokasi registri, dll.. Untuk contoh ini, data yang akan saya gunakan adalah sebagai berikut. Biarkan setiap pengguna menyesuaikannya dengan kebutuhan mereka:

  • Nama domain: www.wordpress.lokal
  • Direktori akar dokumen: /sites/www.wordpress.local/public_html/
  • Log: /sites/www.wordpress.local/logs/

Mari kita mulai membuat file konfigurasi blok server di direktori /etc/nginx/conf.d dengan perintah:

sudo vim /etc/nginx/conf.d/www.wordpress.local.conf

Di dalam file kami akan menempatkan konten berikut:

file konfigurasi nginx untuk WordPress lokal

server {
        server_name www.wordpress.local;
        root /sites/www.wordpress.local/public_html/;

        index index.html index.php;

        access_log /sites/www.wordpress.local/logs/access.log;
        error_log /sites/www.wordpress.local/logs/error.log;

        # No permitir que las páginas se representen en un iframe en dominios externos
        add_header X-Frame-Options "SAMEORIGIN";

        # Prevención MIME
        add_header X-Content-Type-Options "nosniff";

        # Habilitar el filtro de secuencias de comandos entre sitios en los navegadores compatibles
        add_header X-Xss-Protection "1; mode=block";

        # Evitar el acceso a archivos ocultos
        location ~* /\.(?!well-known\/) {
                deny all;
        }

        # Evitar el acceso a ciertas extensiones de archivo
        location ~\.(ini|log|conf)$ {
                deny all;
        }

        # Habilitar enlaces permanentes de WordPress
        location / {
                try_files $uri $uri/ /index.php?$args;
        }

        location ~ \.php$ {
        include /etc/nginx/fastcgi_params;
        fastcgi_pass 127.0.0.1:9000;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        }

}

Kami menyimpan file dan keluar. Sekarang ayo buat direktori root dokumen dan direktori catatan menggunakan perintah:

membuat direktori root dokumen

sudo mkdir -p /sites/www.wordpress.local/public_html/

sudo mkdir -p /sites/www.wordpress.local/logs/

Kita lanjutkan memeriksa file konfigurasi Nginx:

memeriksa file konfigurasi nginx

sudo nginx -t

Pesan seperti di screenshot sebelumnya akan mengkonfirmasi bahwa konfigurasi server Nginx sudah benar. Kami akhirnya memulai ulang layanan:

sudo systemctl restart nginx.service

Buat database untuk WordPress

membuat database untuk WordPress dengan nginx

Mari masuk ke MariaDB / MySQL:

sudo mysql -u root -p

Selanjutnya kami membuat database untuk WordPress:

CREATE DATABASE wordpress;

Berikut ini akan menjadi buat pengguna:

CREATE USER 'wpusuario'@'localhost' IDENTIFIED BY '123password';

Kita lanjutkan memberikan izin kepada pengguna yang dibuat untuk mengakses database:

GRANT ALL PRIVILEGES ON wordpress.* TO 'wpusuario'@'localhost';

Dan kami bisa keluar:

quit

Unduh WordPress

Kami mengunduh versi terbaru WordPress de WordPress.org dengan wget:

unduh WP versi terbaru

wget http://wordpress.org/latest.tar.gz

Sekarang ayo ekstrak paket WordPress dengan perintah ter:

tar -zxvf latest.tar.gz

Berikut ini akan menjadi pindahkan file WordPress ke root dokumen:

sudo mv wordpress/* /sites/www.wordpress.local/public_html/

Kami terus mengubah properti sehingga Nginx dapat menulis file ke root dokumen itu:

ubah izin direktori root

sudo chown -R www-data:www-data /sites/www.wordpress.local/public_html/

sudo chown -R www-data:www-data /sites/www.wordpress.local/logs/

Sekarang ayo buat entri host untuk domain tersebut (dalam contoh ini www.wordpress.local) di File / Etc / hosts, jika lingkungan kami tidak memiliki server DNS untuk resolusi nama:

sudo vim /etc/hosts

Di dalam file, kami akan menambahkan entri seperti yang ditunjukkan di bawah ini. IP yang digunakan adalah komputer lokal saya.

file host wordpress lokal

Instal WordPress

Mengikuti data dalam contoh ini, kita akan pergi ke buka browser web dan kunjungi url:

pemilihan bahasa di instalasi WP

http://www.wordpress.local

Ini akan membawa kita ke Wizard penginstalan WordPress.

mulai wizard penginstalan wp

Kita akan harus tulis detail database agar WordPress dapat terhubung dengannya. Ini akan menjadi data database yang dibuat sebelumnya

konfigurasi database di instalasi Wp

Jika koneksi sudah benar, kita akan melihat pesan sukses di layar baru. Untuk melanjutkan, Anda hanya perlu mengklik Jalankan installasi.

informasi situs lokal WP

Di layar berikutnya kita harus melakukannya masukkan judul situs, pengguna admin WordPress, kata sandi dan alamat email. Kami akan pergi ke layar berikutnya dengan mengklik Instal WordPress.

akses Wp lokal

Jika semuanya berjalan dengan baik, penginstalan WordPress sekarang telah selesai. Sekarang kita dapat mengklik Akses untuk pergi ke Administrator WordPress (Backend).

Backend WordPress

Dan dari sana kami dapat mulai mengembangkan situs kami:

frontal wp

Tetapkan ukuran unggahan file maksimum

Secara default, PHP tidak mengizinkan upload file yang lebih besar dari 2MB. Untuk memungkinkan upload file yang lebih besar melalui antarmuka web WordPress, kita harus mengkonfigurasi upload_max_filesize dan post_max_size di php.ini.

sudo vim /etc/php/7.4/fpm/php.ini

Ini dia pencarian upload_max_filesize y ubah ukuran unggahan menjadi 256M, jika itu yang Anda butuhkan:

upload_max_files di php.ini

upload_max_filesize = 256M

Kami juga akan melakukannya pencarian post_max_size dan kami akan mengubah ukuran unggahan sesuai dengan kebutuhan kita:

post_max_size php.ini

post_max_size = 256M

Sampai selesai kami akan menambahkan modul utama klien_max_body_size di file konfigurasi server Nginx.

sudo vim /etc/nginx/nginx.conf

Arahan dapat ditambahkan ke blok HTTP (untuk semua situs), blok server tertentu atau konteks lokasi.

direktif di nginx.conf

client_max_body_size 256M;

Kami menyimpan file dan keluar. Kami akhirnya memulai ulang layanan:

sudo systemctl restart php7.4-fpm.service

sudo systemctl restart nginx.service

Dan dengan ini kita akan punya WordPress diinstal secara lokal di Ubuntu 20.04.


tinggalkan Komentar Anda

Alamat email Anda tidak akan dipublikasikan. Bidang yang harus diisi ditandai dengan *

*

*

  1. Penanggung jawab data: Miguel Ángel Gatón
  2. Tujuan data: Mengontrol SPAM, manajemen komentar.
  3. Legitimasi: Persetujuan Anda
  4. Komunikasi data: Data tidak akan dikomunikasikan kepada pihak ketiga kecuali dengan kewajiban hukum.
  5. Penyimpanan data: Basis data dihosting oleh Occentus Networks (UE)
  6. Hak: Anda dapat membatasi, memulihkan, dan menghapus informasi Anda kapan saja.

  1.   ana dijo

    Itu tidak berhasil 🙁

    1.    Damien A. dijo

      Halo. Pada titik manakah penginstalan gagal?

  2.   Álvaro dijo

    Bagaimana cara mengkonfigurasi Nginx untuk mengakses dari mesin eksternal dari jaringan lokal yang sama?
    Saat menerapkan konfigurasi yang ditunjukkan dan mencoba masuk dengan akses nama ke default Nginx.