GNU/Linux >> Belajar Linux >  >> Cent OS

Cara Instal Pimcore dengan Nginx di CentOS 7

Pimcore menyediakan sistem manajemen konten perusahaan sumber terbuka dan gratis. Itu ditulis dalam PHP dan menggunakan MySQL untuk menyimpan database-nya. Pimcore CMS sepenuhnya fleksibel dan dapat diedit, Anda dapat mempersonalisasi situs seperti yang Anda inginkan. Terlepas dari semua ini, ia memiliki banyak fitur kelas perusahaan yang membuatnya mampu memenuhi permintaan situs web kelas perusahaan.

Dalam tutorial ini, kita akan menginstal Pimcore CMS di server CentOS 7.

Prasyarat

  • Minimal CentOS 7 server
  • Hak istimewa root

Langkah 1 - Menginstal Nginx

Disarankan untuk memperbarui server sebelum menginstal paket apa pun sehingga paket dan repositori yang ada diperbarui.

yum -y install epel-release
yum -y update

Setelah sistem Anda diperbarui, Anda dapat melanjutkan untuk menginstal server web Nginx.

yum -y install nginx

Sekarang mulai server web Nginx dan aktifkan untuk memulai saat boot menggunakan perintah berikut.

systemctl start nginx
systemctl enable nginx

Langkah 2 - Menginstal PHP

Pimcore mendukung semua versi PHP yang lebih besar dari 5.6. Namun dalam tutorial ini, kita akan menginstal PHP 7.1. Menginstal versi terbaru PHP akan memastikan keamanan dan kinerja aplikasi yang maksimal.

Repositori YUM default CentOS tidak menyertakan PHP 7.1, oleh karena itu Anda perlu menambahkan repositori Webtatic di sistem Anda.

Ketik perintah untuk menginstal repositori Webtatic.

rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
yum -y update

Ketik perintah berikut untuk menginstal PHP 7.1 bersama dengan semua dependensi yang diperlukan.

yum -y install php71w php71w-mysqli php71w-fpm php71w-gd php71w-cli php71w-iconv php71w-dom php71w-simplexml php71w-exif php71w-fileinfo php71w-mbstring php71w-zlib php71w-zip php71w-bz2 php71w-openssl php71w-opcache php71w-curl php71w-pecl-redis ImageMagick

Untuk memeriksa apakah PHP berhasil diinstal, Anda dapat menjalankan:

php -v

Anda harus mendapatkan output yang mirip dengan ini.

[[email protected] ~]# php -v
PHP 7.1.6 (cli) (built: Jun 10 2017 07:28:42) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.1.0, Copyright (c) 1998-2017 Zend Technologies
    with Zend OPcache v7.1.6, Copyright (c) 1999-2017, by Zend Technologies

Sekarang Anda perlu mengkonfigurasi beberapa konfigurasi di PHP. Buka file konfigurasi PHP, php.ini menggunakan editor teks favorit Anda.

nano /etc/php.ini

Temukan baris berikut, batalkan komentar pada baris dan atur zona waktu sesuai dengan wilayah Anda. Misalnya:

[Date]
; Defines the default timezone used by the date functions
; http://php.net/date.timezone
date.timezone = Asia/Kolkata

Selanjutnya, cari baris berikut:

upload_max_filesize = 2M

Ubah nilainya dari 2M menjadi 100M dan cari baris berikut:

post_max_size = 8M

Ubah nilainya dari 8M menjadi 100M. Simpan file dan keluar dari editor.

Sekarang, buka file konfigurasi PHP-FPM yang terletak di /etc/php-fpm.d/www.conf:

nano /etc/php-fpm.d/www.conf

Temukan baris berikut:

user = apache
group = apache

Ubah nilai pengguna dan grup dari apache ke nginx. Sekarang temukan:

;listen.owner = nobody
;listen.group = nobody
;listen.mode = 0660

Batalkan komentar pada baris di atas dan ubah siapa pun menjadi nginx.

Dan, akhirnya, temukan:

listen = 127.0.0.1:9000

Beri komentar pada baris di atas dan tambahkan baris berikut di bawahnya.

listen = /var/run/php-fpm/php-fpm.sock

Sekarang mulai layanan PHP-FPM dan aktifkan untuk memulai secara otomatis saat boot menggunakan:

systemctl start php-fpm
systemctl enable php-fpm

Langkah 3 - Menginstal MariaDB

MariaDB adalah cabang dari database MySQL. Untuk menginstal MariaDB di server Anda, jalankan:

yum -y install mariadb mariadb-server

Jalankan perintah berikut untuk memulai MariaDB dan mengaktifkannya untuk memulai saat boot.

systemctl start mariadb
systemctl enable mariadb

Sekarang jalankan perintah berikut untuk mengamankan instalasi MariaDB Anda.

mysql_secure_installation

Perintah di atas akan menjalankan skrip untuk mengamankan instalasi MariaDB baru. Script akan menanyakan password user root yang ada, kita baru saja menginstal MariaDB, password root belum diset, tekan enter saja untuk melanjutkan.

Script akan menanyakan apakah Anda ingin mengatur kata sandi root untuk instalasi MariaDB Anda, pilih y dan atur kata sandi yang kuat untuk instalasi. Sebagian besar pertanyaan sudah cukup jelas dan Anda harus menjawab ya atau y untuk semua pertanyaan. Outputnya akan terlihat seperti di bawah ini.

Untuk membuat database kita harus login ke baris perintah MySQL terlebih dahulu. Jalankan perintah berikut untuk hal yang sama.

mysql -u root -p

Perintah di atas akan masuk ke shell MySQL dari pengguna root, itu akan meminta kata sandi pengguna root. Berikan kata sandi untuk login. Sekarang jalankan query berikut untuk membuat database baru untuk instalasi Pimcore Anda.

CREATE DATABASE pimcore_data CHARACTER SET UTF8;

Query di atas akan membuat database baru bernama pimcore_data. Pastikan Anda menggunakan titik koma di akhir setiap kueri karena kueri selalu diakhiri dengan titik koma.

Untuk membuat pengguna database baru, jalankan kueri berikut.

CREATE USER 'pimcore_user'@'localhost' IDENTIFIED BY 'StrongPassword';

Sekarang berikan semua hak istimewa kepada pengguna basis data Anda atas basis data yang telah Anda buat. Jalankan perintah berikut.

GRANT ALL PRIVILEGES ON pimcore_data.* TO 'pimcore_user'@'localhost';

Sekarang jalankan perintah berikut untuk segera menerapkan perubahan pada hak istimewa database.

FLUSH PRIVILEGES;

Keluar dari prompt MySQL menggunakan perintah berikut.

EXIT;

Langkah 4 - Memasang Perangkat Lunak Server Tambahan

Pimcore membutuhkan paket server tambahan yang digunakan untuk melakukan operasi tertentu menggunakan Pimcore CMS. Beberapa dependensi hanya tersedia di repositori RPMFusion. Instal repositori RPM Fusion menggunakan perintah berikut.

rpm -Uvh https://download1.rpmfusion.org/free/el/rpmfusion-free-release-7.noarch.rpm

Jalankan perintah berikut untuk menginstal perangkat lunak server tambahan.

yum -y install ffmpeg libreoffice libreoffice-math xorg-x11-fonts-75dpi poppler-utils inkscape libXrender ghostscript fontconfig wkhtmltopdf

Perintah di atas akan menginstal FFMPEG, LibreOffice, pdftotext, Inkscape dan Wkhtmltoimage / Wkhtmltopdf.

Langkah 5 - Memasang dan Mengonfigurasi Pimcore

Karena semua dependensi sudah siap, sekarang kita dapat mengunduh paket instal dari situs web Pimcore.

cd /var/www

Pimcore menyediakan tiga jenis arsip instalasi yang berbeda. Jika Anda ingin menginstal Pimcore beserta data demo yang cocok untuk pemula, Anda dapat menggunakan link berikut untuk mendownload Pimcore.

wget https://www.pimcore.org/download/pimcore-data.zip

Jika Anda ingin menginstal paket inti Pimcore saja, Anda dapat menggunakan tautan berikut untuk mengunduh.

wget https://www.pimcore.org/download/pimcore-latest.zip

Opsi ketiga adalah menginstal nightly build, yang hanya untuk tujuan pengembangan. Perintah di atas akan selalu mendownload Pimcore versi terbaru. Ekstrak arsip menggunakan perintah berikut.

unzip pimcore*.zip -d pimcore

Jika Anda belum menginstal unzip, Anda dapat menjalankan yum -y install unzip.

Langkah 6 - Konfigurasi Izin dan Firewall

Sekarang Anda perlu memberikan kepemilikan aplikasi kepada pengguna server web menggunakan perintah berikut.

chown -R nginx:nginx /var/www/pimcore

Anda mungkin juga perlu mengizinkan lalu lintas HTTP pada port 80 melalui firewall jika Anda menjalankannya. Jalankan perintah berikut untuk hal yang sama.

firewall-cmd --zone=public --permanent --add-service=http
firewall-cmd --reload

Untuk menonaktifkan SELinux sementara tanpa me-restart server, jalankan perintah berikut.

setenforce 0

Untuk menonaktifkan SELinux sepenuhnya, Anda perlu mengedit file /etc/selinux/config.

nano /etc/selinux/config

Temukan baris berikut:

SELINUX=enforcing

Ubah ke:

SELINUX=disabled

Sekarang buat host virtual atau blok server untuk aplikasi Pimcore. Jalankan perintah berikut untuk hal yang sama.

nano /etc/nginx/conf.d/cms.yourdomain.com.conf

Rekatkan baris berikut ke dalam file.

server {
    root /var/www/pimcore;
    index index.php;
    server_name cms.yourdomain.com;
    listen 80;
    access_log  /var/www/pimcore/website/var/log/nginx_access.log;
    error_log   /var/www/pimcore/website/var/log/nginx_error.log error;
 
    set $getassets "";
    if ($uri ~* ^/website/var/assets)   { set $getassets "${getassets}A"; }
    if ($request_method = GET)      { set $getassets "${getassets}B"; }
    if ($getassets = "AB") {
        rewrite ^ $uri$args last;
    }
 
  location ~* ^(/plugins/(?!.*/static).*|^/pimcore/(?!(static|modules/3rdparty)).*|/website/var/(?!tmp|assets|areas)|/modules/(?!.*/static).*|^(vendor|tests|node_modules|phing)/.*|^(bower|package|composer|gulpfile)\.) {
        return 403;
    }
    
    location / {
        try_files $uri $uri/ /index.php$is_args$args;
        index index.php;
    }
 
    location ~ \.php$ {
        try_files $uri =404;
        fastcgi_pass   unix:/var/run/php-fpm/php-fpm.sock;
        fastcgi_index  index.php;
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
        fastcgi_param  SCRIPT_FILENAME    $document_root$fastcgi_script_name;
        include        fastcgi_params;
        fastcgi_read_timeout 60;
    }

    location ~* \.(jpe?g|gif|png|bmp|ico|css|js|pdf|zip|htm|html|docx?|xlsx?|pptx?|txt|wav|swf|svg|avi|mp\d)$ {
        access_log off;
        log_not_found off;
        try_files $uri $uri/ /website/var/assets$uri /index.php$is_args$args;
        expires 1w;
    }
    
  
    rewrite ^\/cache-buster-\d+(.*) $1 break;
    
    location /fpm-ping {
        access_log off;
        include fastcgi_params;
        fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
    }

    location /fpm-status {
        allow 127.0.0.1;
        deny all;
        access_log off;
        include fastcgi_params;
        fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
    }
    location /nginx-status {
        allow 127.0.0.1;
        deny all;
        access_log off;
        stub_status;
    }
}

Ganti cms.yourdomain.com dengan domain atau subdomain apa pun yang ingin Anda gunakan untuk mengakses aplikasi. Simpan file dan keluar dari editor. Jalankan perintah berikut untuk memulai ulang server Nginx Anda.

systemctl restart nginx

Sekarang selesaikan instalasi menggunakan browser web, buka tautan berikut.

http://cms.yourdomain.com

Anda akan disambut oleh halaman berikut.

Pilih mysqli sebagai adaptor basis data, berikan detail basis data dan pengguna admin baru. Klik Pasang Sekarang! tombol sekali selesai. Instalasi hanya akan memakan waktu beberapa detik untuk selesai.

Kesimpulan

Instalasi Pimcore sekarang selesai, Anda dapat menggunakan Pimcore untuk membuat situs web yang indah dengan mudah untuk tujuan pribadi atau komersial.


Cent OS
  1. Cara Menginstal WordPress dengan Nginx di CentOS 7

  2. Cara Menginstal Phorum dengan Nginx di CentOS 7

  3. Cara Menginstal Magento 2 di CentOS 8

  1. Cara Instal phpMyAdmin dengan Nginx di CentOS 7

  2. Cara Menginstal Nextcloud dengan Nginx dan PHP 7.3 di CentOS 8

  3. Cara Menginstal ownCloud 9.1 dengan Nginx dan MariaDB di CentOS 7

  1. Cara Instal WordPress dengan HHVM dan Nginx di CentOS 7

  2. Cara Menginstal SuiteCRM dengan Nginx di CentOS 7

  3. Cara Menginstal MediaWiki dengan Nginx di CentOS 7