Memasang Fork CMS pada CentOS 7

Fork adalah CMS open source yang ditulis dalam PHP. Kode sumber Fork di-host di GitHub . Panduan ini akan menunjukkan kepada Anda bagaimana menginstal Fork CMS pada instance CentOS 7.4 Vultr yang baru.

Persyaratan

  • PHP 7.1 atau lebih tinggi.
  • MySQL 5.0 atau lebih tinggi.
  • Nginx atau Apache 2.0 dengan .htaccess, mod rewrite, mod expires(opsional tetapi dianjurkan) dan mod deflate(opsional) yang aktif.

Sebelum kamu memulai

Periksa versi CentOS.

cat /etc/centos-release
# CentOS Linux release 7.4.1708 (Core)

Buat non-rootakun pengguna baru dengan sudoakses dan alihkan ke sana.

useradd -c "John Doe" johndoe && passwd johndoe
usermod -aG wheel johndoe
su - johndoe

CATATAN : Ganti johndoedengan nama pengguna Anda .

Siapkan zona waktu.

timedatectl list-timezones
sudo timedatectl set-timezone 'Region/City'

Pastikan sistem Anda mutakhir.

sudo yum update -y

Instal paket yang diperlukan dan berguna.

sudo yum install -y wget vim unzip bash-completion

Nonaktifkan SELinux.

sudo setenforce 0

Langkah 1 - Instal PHP, ekstensi PHP yang diperlukan, NGINX dan MySQL

CentOS tidak menyediakan versi PHP terbaru dalam repositori perangkat lunak default. Kami perlu menambahkan repo YUM Webtatic. Untuk cara melakukannya, Anda dapat mengikuti panduan Vultr ini .

Unduh dan pasang PHP 7.2 dan ekstensi PHP yang dibutuhkan.

sudo yum install -y php72w-cli php72w-fpm php72w-common php72w-mbstring php72w-gd php72w-intl php72w-mysql php72w-xml

Periksa versi PHP.

php --version
PHP 7.2.2 (cli) (built: Feb  4 2018 10:14:07) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies

Instal NGINX.

sudo vim /etc/yum.repos.d/nginx_mainline.repo

# Copy/paste this to the /etc/yum.repos.d/nginx_mainline.repo file

[nginx]
name=nginx repo
baseurl=https://nginx.org/packages/mainline/centos/7/$basearch/
gpgcheck=1
enabled=1

wget https://nginx.org/keys/nginx_signing.key
sudo rpm --import nginx_signing.key
rm nginx_signing.key

sudo yum install -y nginx

Periksa versi NGINX.

sudo nginx -v

Mulai dan aktifkan NGINX.

sudo systemctl enable nginx.service
sudo systemctl start nginx.service

Instal MariaDB.

sudo vim /etc/yum.repos.d/MariaDB.repo

# Copy/paste this to the /etc/yum.repos.d/MariaDB.repo file

[mariadb]
name = MariaDB
baseurl = https://yum.mariadb.org/10.2/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1

sudo yum install -y MariaDB-server MariaDB-client

Periksa versi MariaDB.

mysql --version
# mysql  Ver 15.1 Distrib 10.2.13-MariaDB, for Linux (x86_64) using readline 5.1

Mulai dan aktifkan MariaDB.

sudo systemctl enable mariadb.service
sudo systemctl start mariadb.service

Jalankan mysql_secure_installationskrip untuk meningkatkan keamanan instalasi MariaDB Anda.

sudo mysql_secure_installation

Masuk ke MariaDB sebagai pengguna root.

mysql -u root -p
# Enter password:

Buat basis data dan pengguna MariaDB baru, dan ingat kredensial.

create database dbname;
grant all on dbname.* to 'username' identified by 'password';

Keluar dari MySQL.

exit

Langkah 2 - Konfigurasikan NGINX

Jalankan sudo vi /etc/nginx/conf.d/fork.confdan isi dengan yang berikut ini.

server {
    listen 80;

    root /var/www/fork;
    index index.php index.html;

    server_name example.com;

    location / {
        # Checks whether the requested url exists as a file $uri or directory $uri/ in the root, else redirect to /index.php.
        try_files $uri $uri/ @redirects;
    }

    location @redirects {
        rewrite ^ /index.php;
    }

    location ~ \.php$ {
        try_files $uri =404;
        include fastcgi_params;
        fastcgi_pass 127.0.0.1:9000; # Make sure to doublecheck this!
        fastcgi_index index.php;
        fastcgi_read_timeout 60;
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    }

    # Don't pollute the logs with common requests
    location = /robots.txt  { access_log off; log_not_found off; }
    location = /favicon.ico { access_log off; log_not_found off; }

    # As Fork CMS has the app_root as doc_root, we need to restrict access to a few things for security purposes!
    location ~* ^/(composer\..*|vendor\/.*|Procfile$|\.git\/.*|src\/Console.*|.*\.gitignore|\.editorconfig|\.travis.yml|autoload\.php|bower\.json|phpunit\.xml\.dist|.*\.md|app\/logs\/.*|app\/config\/.*|src\/Frontend\/Cache\/CompiledTemplates.*|src\/Frontend\/Cache\/Locale\/.*\.php|src\/Frontend\/Cache\/Navigation\/.*\.php|src\/Frontend\/Cache\/Search\/.*|src\/Backend\/Cache\/CompiledTemplates\/.*|src\/Backend\/Cache\/Locale\/.*\.php)$ {
        deny all;
        access_log off;
        log_not_found off;
    }

    # Deny access to dot-files.
    location ~ /\. {
        deny all;
        access_log off;
        log_not_found off;
    }
}

Ringkasan perubahan yang akan Anda buat adalah sebagai berikut.

  • Ubah nilai rootarahan untuk menunjuk ke lokasi yang benar dari situs web Anda, seperti /var/www/fork.
  • Ubah nilai server_namearahan untuk menunjuk ke nama domain atau alamat IP Anda.
  • Pastikan Anda memeriksa apakah fastcgi_passdiatur dengan benar.

Uji konfigurasi NGINX.

sudo nginx -t

Muat ulang NGINX.

sudo systemctl reload nginx.service

Langkah 3 - Unduh dan pasang Komposer

Unduh dependensi komposer.

sudo yum install -y curl git unzip

Unduh dan pasang Komposer , pengelola dependensi untuk PHP.

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('SHA384', 'composer-setup.php') === '544e09ee996cdf60ece3804abc52599c22b1f40f4323403c44d44fdfdd586475ca9813a858088ffbc1f233e9b180f061') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"
sudo mv composer.phar /usr/local/bin/composer

Periksa versi Komposer.

composer --version
# Composer version 1.6.3 2018-01-31 16:28:17

Langkah 4 - Unduh dan pasang Fork CMS via Composer

Buat direktori root dokumen.

sudo mkdir -p /var/www/fork

Ubah kepemilikan /var/www/forkdirektori menjadi johndoe.

sudo chown -R johndoe:johndoe /var/www/fork

Unduh rilis stabil terbaru dari Fork CMS dari baris perintah.

cd /var/www/fork
composer create-project forkcms/forkcms .

Ubah kepemilikan /var/www/forkdirektori menjadi nginx.

sudo chown -R nginx:nginx /var/www/fork

Jalankan sudo vim /etc/php-fpm.d/www.confdan atur pengguna dan grup ke nginx.

sudo vim /etc/php-fpm.d/www.conf
# user = nginx
# group = nginx

Mulai ulang php-fpm.service.

sudo systemctl restart php-fpm.service

Edit app/config/parameters.yml.distfile dan atur informasi basis data.

sudo vim /var/www/fork/app/config/parameters_install.yml

Buat /var/lib/php/sessiondirektori dan ubah kepemilikannya kepada pengguna nginx.

sudo mkdir -p /var/lib/php/session
sudo chown -R nginx:nginx /var/lib/php/session

Terakhir, dengan menggunakan browser web pilihan Anda, buka situs Anda dan ikuti Fork CMSpenginstalnya. Setelah mengikuti penginstal, Anda harus menjalankan Fork. Untuk mengakses area admin Fork cukup tambahkan /privateke URL situs Anda.

Tinggalkan Komentar

Cara Memasang Panel Kontrol Hosting Mudah di Ubuntu 16.04

Cara Memasang Panel Kontrol Hosting Mudah di Ubuntu 16.04

Pelajari langkah-langkah untuk memasang Panel Kontrol Hosting Mudah (EHCP) di Ubuntu 16.04 dengan panduan ini.

Wawasan tentang 26 Teknik Analisis Data Besar: Bagian 1

Wawasan tentang 26 Teknik Analisis Data Besar: Bagian 1

Wawasan tentang 26 Teknik Analisis Data Besar: Bagian 1

Fungsionalitas Lapisan Arsitektur Referensi Big Data

Fungsionalitas Lapisan Arsitektur Referensi Big Data

Baca blog untuk mengetahui berbagai lapisan dalam Arsitektur Big Data dan fungsinya dengan cara yang paling sederhana.

6 Hal yang Sangat Menggila dari Nintendo Switch

6 Hal yang Sangat Menggila dari Nintendo Switch

Banyak dari Anda tahu Switch keluar pada Maret 2017 dan fitur-fitur barunya. Bagi yang belum tahu, kami sudah menyiapkan daftar fitur yang membuat 'Switch' menjadi 'gadget yang wajib dimiliki'.

Janji Teknologi Yang Masih Belum Ditepati

Janji Teknologi Yang Masih Belum Ditepati

Apakah Anda menunggu raksasa teknologi untuk memenuhi janji mereka? periksa apa yang belum terkirim.

Bagaimana AI Dapat Membawa Otomatisasi Proses ke Tingkat Selanjutnya?

Bagaimana AI Dapat Membawa Otomatisasi Proses ke Tingkat Selanjutnya?

Baca ini untuk mengetahui bagaimana Kecerdasan Buatan menjadi populer di antara perusahaan skala kecil dan bagaimana hal itu meningkatkan kemungkinan untuk membuat mereka tumbuh dan memberi keunggulan pada pesaing mereka.

Singularitas Teknologi: Masa Depan Peradaban Manusia yang Jauh?

Singularitas Teknologi: Masa Depan Peradaban Manusia yang Jauh?

Saat Sains Berkembang dengan kecepatan tinggi, mengambil alih banyak upaya kita, risiko menundukkan diri kita pada Singularitas yang tidak dapat dijelaskan juga meningkat. Baca, apa arti singularitas bagi kita.

CAPTCHA: Berapa Lama Itu Bisa Tetap Menjadi Teknik yang Layak Untuk Perbedaan Human-AI?

CAPTCHA: Berapa Lama Itu Bisa Tetap Menjadi Teknik yang Layak Untuk Perbedaan Human-AI?

CAPTCHA telah berkembang cukup sulit bagi pengguna untuk dipecahkan dalam beberapa tahun terakhir. Apakah itu akan tetap efektif dalam deteksi spam dan bot di masa mendatang?

Telemedicine Dan Perawatan Kesehatan Jarak Jauh: Masa Depan Ada Di Sini

Telemedicine Dan Perawatan Kesehatan Jarak Jauh: Masa Depan Ada Di Sini

Apa itu telemedicine, perawatan kesehatan jarak jauh dan dampaknya terhadap generasi mendatang? Apakah itu tempat yang bagus atau tidak dalam situasi pandemi? Baca blog untuk menemukan tampilan!

Pernahkah Anda Bertanya-tanya Bagaimana Hacker Menghasilkan Uang?

Pernahkah Anda Bertanya-tanya Bagaimana Hacker Menghasilkan Uang?

Anda mungkin pernah mendengar bahwa peretas menghasilkan banyak uang, tetapi pernahkah Anda bertanya-tanya bagaimana cara mereka mendapatkan uang sebanyak itu? mari berdiskusi.