GNU/Linux >> Belajar Linux >  >> Debian

Cara Menginstal WonderCMS dengan Nginx di Debian 11 Bullseye

WonderCMS adalah sistem manajemen konten yang cepat dan mudah yang tidak memerlukan database untuk membuat situs web. Ini menawarkan fitur yang kaya seperti URL login kustom, desain ramah SEO dengan elemen WYSIWYG untuk mengedit situs Anda dalam teks biasa atau format kode HTML; kerangka kerja CSS yang fleksibel sehingga Anda dapat mengubah tampilan pada setiap halaman tanpa mempengaruhi bagian lain dari halaman web, termasuk ukuran judul/font, dll. Bersamaan dengan dukungan penurunan harga asli, yang memungkinkan pengguna cara mudah untuk memublikasikan artikel secara online hanya dengan menggunakan paragraf.

Dalam tutorial berikut, Anda akan belajar cara menginstal WonderCMS menggunakan Nginx dan PHP bersama dengan mengimpor repositori terbaru atau menggunakan versi default dan cara membuat blok server dan mengaturnya menggunakan terminal baris perintah di Desktop atau server Debian 11 Bullseye.

Instal Nginx

Untuk memulai penginstalan, Anda perlu menginstal Nginx server web. Metodenya adalah menginstal jalur utama atau stabil Nginx terbaru dari repositori Ondřej Sur untuk mendapatkan perangkat lunak terbaru. Banyak pengguna Ubuntu akan mengetahui PPA-nya, dan Anda dapat melakukan hal yang sama di Debian.

Untuk pengguna yang hanya ingin menggunakan Nginx versi APT default Debian, gunakan perintah berikut di bawah ini atau lewati dan impor jalur utama atau stabil NGINX terbaru.

Instal Nginx – Repositori Debian 11

sudo apt install nginx nginx-full

Untuk menggunakan versi terbaru dari jalur utama atau stabil Nginx, Anda harus mengimpor repositori terlebih dahulu.

Impor HANYA SATU REPOSITORY!

Opsi 1 – Impor repositori jalur utama:

curl -sSL https://packages.sury.org/nginx-mainline/README.txt | sudo bash -x

Opsi 2 – Impor repositori yang stabil:

curl -sSL https://packages.sury.org/nginx/README.txt | sudo bash -x

Perbarui repositori Anda untuk mencerminkan perubahan baru:

sudo apt update

Sekarang Anda telah menginstal repositori Nginx dan perbarui daftar repositori, instal Nginx dengan yang berikut:

sudo apt install nginx-core nginx-common nginx nginx-full -y

Perhatikan bahwa Anda mungkin diminta untuk menyimpan atau mengganti /etc/nginx/nginx.conf yang ada file konfigurasi selama instalasi. Disarankan untuk menyimpan file konfigurasi Anda saat ini dengan menekan (n) .

Menginstal Nginx dengan repositori khusus dilengkapi dengan modul tambahan yang dikompilasi, salah satu modul yang paling banyak dipilih dan direkomendasikan untuk diaktifkan adalah modul Brotli.

Untuk memasang brotli , buka nginx.conf . Anda file konfigurasi:

nano /etc/nginx/nginx.conf

Sekarang tambahkan baris tambahan sebelumnya di HTTP{} bagian:

brotli on;
brotli_comp_level 6;
brotli_static on;
brotli_types application/atom+xml application/javascript application/json application/rss+xml
   application/vnd.ms-fontobject application/x-font-opentype application/x-font-truetype
   application/x-font-ttf application/x-javascript application/xhtml+xml application/xml
   font/eot font/opentype font/otf font/truetype image/svg+xml image/vnd.microsoft.icon
   image/x-icon image/x-win-bitmap text/css text/javascript text/plain text/xml;

brotli_comp_level dapat disetel antara 1 (terendah) dan 11 (tertinggi) . Biasanya, sebagian besar server berada di tengah, tetapi jika server Anda adalah monster, setel ke 11 dan pantau tingkat penggunaan CPU.

Selanjutnya, uji untuk memastikan perubahan berfungsi dengan benar sebelum ditayangkan:

sudo nginx -t

Jika perubahan berfungsi dengan benar, Anda akan melihat yang berikut:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Sekarang buat perubahan secara langsung dengan memulai ulang server Anda:

sudo systemctl restart nginx

Selanjutnya, aktifkan Nginx pada boot sistem:

sudo systemctl enable nginx --now

Instal PHP &PHP-FPM

Kami sekarang menginstal PHP, yang merupakan komunikator backend atau perantara. PHP 8.0 menjadi relatif stabil, dan versi PHP 8.1 yang lebih baru sekarang tersedia.

Tutorial akan fokus pada mengimpor versi PHP terbaru Ondřej Surý, pengelola untuk Debian PHP. Ini selalu up to date bahkan ketika versi PHP baru dijatuhkan.

Impor Repositori PHP Ondřej Surý

Langkah pertama adalah mengimpor dan menginstal GPG dan repositori.

Di terminal Anda, gunakan perintah berikut.

curl -sSL https://packages.sury.org/php/README.txt | sudo bash -x

Perintah ini akan menginstal repositori PHP dan memperbarui repositori APT Anda.

Selanjutnya, perbarui daftar repositori karena repositori baru akan memerlukan beberapa paket yang ada untuk ditingkatkan dan disarankan untuk dilakukan sebelum menginstal versi PHP apa pun.

sudo apt upgrade

Opsi 1. Instal PHP 7.4

Default dari banyak versi PHP minimum CMS adalah menginstal PHP 7.4. Meskipun ini dianggap sangat stabil, idealnya, Anda harus menginstal PHP 8.0 jika memungkinkan untuk keuntungan kinerja dan keamanan.

Di terminal Anda, jalankan perintah berikut.

sudo apt install php7.4 php7.4-fpm php7.4-mbstring php7.4-curl php7.4-zip

Selanjutnya, mulai dan aktifkan PHP 7.4-FPM agar otomatis dimulai saat boot.

sudo systemctl enable php7.4-fpm --now

Opsi 2. Instal PHP 8.0

Sebagian besar pengguna harus menginstal PHP 8.0 untuk aplikasi web mereka dengan 7.4 dianggap stabil lama, mirip dengan 7.4 di terminal Anda; jalankan perintah berikut.

sudo apt install php8.0 php8.0-fpm php8.0-mbstring php8.0-curl php8.0-zip

Selanjutnya, mulai dan aktifkan PHP 8.0-FPM agar otomatis dimulai saat boot.

sudo systemctl enable php8.0-fpm --now

Opsi 3. Instal PHP 8.1

Opsi ketiga adalah menginstal PHP 8.1, rilis terbaru pada saat tutorial ini. Mirip dengan 8.0 dan 7.4, jalankan perintah berikut untuk menginstal PHP 8.1 untuk WonderCMS.

sudo apt install php8.1 php8.1-fpm php8.1-mbstring php8.1-curl php8.1-zip

Selanjutnya, mulai dan aktifkan PHP 8.1-FPM agar otomatis dimulai saat boot.

sudo systemctl enable php8.1-fpm --now

Instal WonderCMS

Unduh WonderCMS

Pertama-tama, unduh paket arsip WonderCMS dengan mengunjungi halaman unduhan resmi untuk mengambil tautan terbaru dan mengunduh menggunakan perintah terminal Anda dengan wget atau curl perintah.

Contoh:

wget https://github.com/robiso/wondercms/releases/download/3.3.1/wondercms-331.zip

Membuat Struktur Folder untuk WonderCMS

Sekarang Anda memiliki arsip yang diunduh, lanjutkan untuk membuka ritsletingnya dan pindahkan ke direktori www.

Buat direktori untuk WonderCMS:

sudo mkdir -p /var/www/wondercms

Buka zipWonderCMS ke direktori www:

sudo unzip wondercms*.zip -d /var/www/

Anda harus menyetel izin pemilik direktori ke WWW, atau Anda akan mengalami masalah dengan izin menulis WonderCMS.

Setel izin chown (penting):

sudo chown -R www-data:www-data /var/www/wondercms/

Setel izin chmod (penting):

sudo find /var/www/wondercms -type d -exec chmod 755 {} \;
sudo find /var/www/wondercms -type f -exec chmod 644 {} \;

Buat Konfigurasi Blok Server Nginx

Tahap selanjutnya adalah membuat blok server WonderCMS untuk pengguna baru Nginx; ini adalah file konfigurasi situs web untuk aplikasi web di back-end, sama seperti host virtual untuk pengguna yang bermigrasi dari aplikasi web jenis Apache.

Pertama, buat blok server menggunakan perintah berikut, pastikan untuk mengganti example.com dengan nama domain atau nama pilihan Anda.

sudo nano /etc/nginx/sites-available/example.com.conf

Di bawah ini adalah contoh; Anda dapat memilih bagian; namun, “lokasi ~ \.php$” harus dalam file konfigurasi Nginx.

CATATAN:Pastikan untuk mengubah www.example.com dan example.com serta jalur root.

server {
        listen 80;
        # adapt to your server name
        server_name www.wonder-example.com;
        # adapt the path
        root /var/www/wondercms;
        index index.php;
        # prevent directory listing
        autoindex off;

        # rewrite url to make it pretty
        location / {
            try_files $uri $uri/ @rewrite;
        }
            location @rewrite {
            rewrite ^/(.+)$ /index.php?page=$1 last;
        }

        # prevent access to database.js
        location ~ database.js {
            return 403;
        }

        location ~ cache.json {
            return 403;
        }

        # use php-fpm for dealing with php files

location ~ \.php$ {
      fastcgi_pass unix:/run/php/php8.1-fpm.sock;

      fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
      include fastcgi_params;
      include snippets/fastcgi-php.conf;
      fastcgi_buffer_size 128k;
      fastcgi_buffers 4 128k;
      fastcgi_intercept_errors on; 
        }
    }

Perhatikan, jika Anda menggunakan PHP 8.xx temukan dan ganti baris di atas “fastcgi_pass unix:/run/php/php7.4-fpm.sock;” ke "fastcgi_pass unix:/run/php/php8.0-fpm.sock;" untuk 8.0 atau "fastcgi_pass unix:/run/php/php8.1-fpm.sock;" untuk 8.1.

Selanjutnya, Anda harus mengaktifkan file konfigurasi Nginx dari “sites-available” . Untuk melakukan ini, Anda akan membuat symlink ke “sites-enabled” sebagai berikut.

sudo ln -s /etc/nginx/sites-available/example.com.conf /etc/nginx/sites-enabled/

Pastikan untuk mengganti "example.conf" dengan nama file konfigurasi Anda.

Anda sekarang dapat melakukan dry run kemudian restart server Nginx Anda jika semuanya baik-baik saja.

sudo nginx -t

Setelah memeriksa dan semuanya baik-baik saja dengan uji coba kering Nginx Anda, mulai ulang layanan Nginx.

sudo systemctl restart nginx

Konfigurasi PHP.ini

Sebelum pindah ke bagian instalasi UI web, Anda harus menyesuaikan PHP Anda untuk penggunaan yang optimal untuk WonderCMS. Setelan ini lebih merupakan panduan, dan Anda dapat meningkatkan penurunan sesuai keinginan.

Pertama, buka php.ini Anda. Perhatikan bahwa lokasi Anda mungkin berbeda tergantung pada nomor versi PHP Anda.

sudo nano /etc/php/{version}/fpm/php.ini

Selanjutnya, idealnya, Anda dapat lebih meningkatkan CMS Anda dengan menyesuaikan beberapa pengaturan di bawah ini. Perhatikan bahwa jika Anda menggunakan 1VCPU sumber daya rendah, 1GB, Anda tidak akan berbuat banyak. Namun, pengaturan di bawah ini hanyalah panduan, lakukan riset atau gunakan ini dan utak-atik.

##increase upload max size recommend 50 to 100mb example only## 
 upload_max_filesize = 100MB

##increase post max size recommend 50 to 100mb  example only##
 post_max_size = 100MB

## increase max execution time recommend 120 to 300##
 max_execution_time = 120

## increase GET/POST/COOKIE input variables recommend 5000 to 10000##
max_input_vars = 5000

## increase memory limit recommend 256mb or 512mb##
memory_limit = 256M

Sekarang restart server PHP-FPM Anda.

sudo systemctl restart php{version}-fpm

Pengaturan PHP yang Anda sesuaikan adalah untuk backend PHP. Anda juga perlu mengubah blok server Nginx untuk memungkinkan ukuran tubuh yang besar. Ini dilakukan dengan membuka kembali blok server Anda dan menambahkan baris berikut.

Buka blok server Anda.

sudo nano /etc/nginx/sites-available/example.com

Sesuaikan garis ini untuk menambah ukuran tubuh.

client_max_body_size 100M;

Ingat, pertahankan ukuran maksimal klien sama dengan setelan file PHP .

Selanjutnya, uji perubahannya, lalu restart server Nginx Anda jika semuanya baik-baik saja.

sudo nginx -t

Setelah memeriksa dan semuanya baik-baik saja dengan uji coba kering Nginx Anda, mulai ulang layanan Nginx.

sudo systemctl restart nginx

Instal WonderCMS WebUI

Setelah semua penyiapan dan konfigurasi backend selesai, Anda dapat masuk ke domain Anda dan mulai menginstal.

##go to installation address##
 https://www.yoursite.com

Halaman pertama yang akan Anda lihat adalah kata sandi sementara dan tombol login.

Klik login untuk melanjutkan.

Contoh:

Masukkan sandi Anda untuk terus menggunakan kata sandi yang tersedia di halaman masuk Selamat datang di situs web Anda. Jika Anda lupa atau tidak menyalin, klik kembali dan salin ulang, lalu login kembali.

Contoh:

Setelah login, Anda akan masuk ke halaman CMS Anda yang terlihat seperti halaman login asli, jangan tertipu; ini adalah halaman edit terbuka. Di bagian atas, Anda akan melihat perubahan pengaturan, dan ini sangat disarankan segera untuk mengamankan Situs Web Anda lebih lanjut.

Contoh (Klik Gambar untuk Memperbesar) :

Setelah Anda membuka halaman pengaturan, dari sini, Anda dapat menyesuaikan pengaturan keamanan plugin dan mulai menyesuaikan bagian belakang situs web Anda sebelum mencapai editor halaman WonderCMS.

Contoh (Klik Gambar untuk Memperbesar) :

Selamat, Anda telah berhasil menginstal WonderCMS versi terbaru dengan Nginx dan PHP.

Amankan Nginx dengan Let's Encrypt SSL Free Certificate

Idealnya, Anda ingin menjalankan Nginx di HTTPS menggunakan sertifikat SSL . Cara terbaik untuk melakukannya adalah dengan menggunakan Let's Encrypt, otoritas sertifikat gratis, otomatis, dan terbuka yang dijalankan oleh Internet Security Research Group (ISRG) nirlaba .

Pertama, instal paket certbot sebagai berikut:

sudo apt install python3-certbot-nginx -y

Setelah terinstal, jalankan perintah berikut untuk memulai pembuatan sertifikat Anda:

sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --email [email protected] -d www.example.com

Penyiapan ideal ini mencakup pengalihan paksa HTTPS 301, header Strict-Transport-Security, dan OCSP Stapling. Pastikan untuk menyesuaikan email dan nama domain dengan kebutuhan Anda.

Sekarang URL Anda akan menjadi HTTPS://www.example.com alih-alih HTTP://www.example.com .

Jika Anda menggunakan URL HTTP old yang lama , secara otomatis akan dialihkan ke HTTPS .

Secara opsional, Anda dapat mengatur tugas cron untuk memperbarui sertifikat secara otomatis. Certbot menawarkan skrip yang melakukan ini secara otomatis, dan Anda dapat menguji terlebih dahulu untuk memastikan semuanya berfungsi dengan menjalankan dry run.

sudo certbot renew --dry-run

Jika semuanya berfungsi, buka jendela crontab Anda menggunakan perintah terminal berikut.

sudo crontab -e

Selanjutnya, harap tentukan waktu kapan harus diperpanjang secara otomatis. Ini harus diperiksa minimal setiap hari, dan jika sertifikat perlu diperbarui, skrip tidak akan memperbarui sertifikat. Jika Anda memerlukan bantuan untuk menemukan waktu yang tepat untuk menyetel, gunakan crontab.guru alat gratis.

00 00 */1 * * /usr/sbin/certbot-auto renew

Debian
  1. Cara Menginstal Ghost di Debian dengan Nginx

  2. Cara menginstal DokuWiki di Debian Wheezy dengan Nginx

  3. Cara Menginstal WordPress dengan Nginx di Debian 10

  1. Cara Menginstal Phorum dengan Nginx di Debian 9

  2. Cara Menginstal HTTP Git Server dengan Nginx di Debian 11

  3. Cara Menginstal WonderCMS dengan Nginx di Debian 11

  1. Cara Menginstal WonderCMS dengan Nginx di Debian 9

  2. Cara Menginstal InvoicePlane dengan Nginx di Debian 9

  3. Cara menginstal FuelPHP dengan Nginx di Debian 8 VPS