Bagaimana untuk Memasang ProcessWire CMS 3.0 pada CentOS 7 LAMP VPS

ProcessWire CMS 3.0 adalah Sistem Pengurusan Kandungan (CMS) yang mudah, fleksibel dan berkuasa, bebas dan terbuka. ProcessWire CMS 3.0 menampilkan API gaya jQuery yang mudah digunakan, seni bina plugin modular sepenuhnya, dan sistem templat yang fleksibel dan kuat yang memberikan pengalaman pengguna yang sama memuaskan untuk pereka, pembangun, dan pengguna akhir.

Dalam tutorial ini kita akan memasang ProcessWire CMS 3.0 pada CentOS 7 LAMP VPS menggunakan pelayan web Apache, PHP 7.1, dan pangkalan data MariaDB.

Prasyarat

  • Contoh pelayan Vultr CentOS 7 yang bersih dengan akses SSH

Langkah 1: Tambah Pengguna Sudo

Kami akan mulakan dengan menambah sudopengguna baru .

Pertama, log masuk ke pelayan anda sebagai root:

ssh root@YOUR_VULTR_IP_ADDRESS

Tambah pengguna baru yang dipanggil user1(atau nama pengguna pilihan anda):

useradd user1

Seterusnya, tetapkan kata laluan untuk user1pengguna:

passwd user1

Apabila digesa, masukkan kata laluan selamat dan tidak dapat dilupakan.

Sekarang periksa /etc/sudoersfail untuk memastikan sudoerskumpulan itu didayakan:

visudo

Cari bahagian seperti ini:

%wheel        ALL=(ALL)       ALL

Baris ini memberitahu kami bahawa pengguna yang menjadi ahli wheelkumpulan boleh menggunakan sudoarahan untuk mendapatkan rootkeistimewaan. Ia harus dibahas secara default sehingga anda dapat keluar dari fail tersebut.

Seterusnya kita perlu menambah user1kepada wheelkumpulan:

usermod -aG wheel user1

Kami dapat mengesahkan user1keahlian kumpulan dan memastikan bahawa usermodarahan itu berfungsi dengan groupsperintah:

groups user1

Sekarang gunakan suarahan untuk bertukar ke user1akaun pengguna sudo yang baru :

su - user1

Permintaan arahan akan dikemas kini untuk menunjukkan bahawa anda kini masuk ke user1akaun. Anda boleh mengesahkannya dengan whoamiarahan:

whoami

Sekarang mulakan semula sshdperkhidmatan supaya anda boleh log masuk sshmenggunakan akaun pengguna sudo bukan root yang baru saja anda buat:

sudo systemctl restart sshd

Keluar user1akaun:

exit

Keluar dari rootakaun (yang akan memutuskan sshsesi anda ):

exit

Anda kini boleh sshmasuk ke dalam contoh pelayan dari hos tempatan anda menggunakan user1akaun pengguna sudo bukan root baru :

ssh user1@YOUR_VULTR_IP_ADDRESS

Jika anda mahu melaksanakan sudotanpa perlu memasukkan kata laluan setiap kali, kemudian buka /etc/sudoersfail itu dengan menggunakan visudo:

sudo visudo

Edit bahagian untuk wheelkumpulan sehingga kelihatan seperti ini:

%wheel        ALL=(ALL)       NOPASSWD: ALL

Harap maklum: Menonaktifkan keperluan kata laluan untuk pengguna sudo bukanlah amalan yang disarankan, tetapi disertakan di sini kerana ia dapat membuat konfigurasi pelayan jauh lebih mudah dan kurang membuat kekecewaan, terutamanya semasa sesi pentadbiran sistem lebih lama. Sekiranya anda prihatin terhadap implikasi keselamatan, anda selalu dapat mengembalikan perubahan konfigurasi ke asal setelah anda menyelesaikan tugas pentadbiran anda.

Setiap kali anda mahu log masuk ke rootakaun pengguna dari dalam sudoakaun pengguna, anda boleh menggunakan salah satu arahan berikut:

sudo -i
sudo su -

Anda boleh keluar dari rootakaun dan kembali ke sudoakaun pengguna anda bila-bila masa dengan hanya menaip exit.

Langkah 2: Kemas kini Sistem CentOS 7

Sebelum memasang sebarang pakej pada contoh pelayan CentOS, kami akan mengemas kini sistem terlebih dahulu.

Pastikan anda log masuk ke pelayan menggunakan pengguna sudo bukan root dan jalankan arahan berikut:

sudo yum -y update

Langkah 3: Pasang Pelayar Web Apache

Pasang pelayan web Apache:

sudo yum -y install httpd

Gunakan systemctlarahan untuk memulakan dan mendayakan Apache untuk melaksanakan secara automatik pada masa boot:

sudo systemctl enable httpd
sudo systemctl start httpd

Periksa fail konfigurasi Apache anda untuk memastikan DocumentRootarahan menunjukkan ke direktori yang betul:

sudo vi /etc/httpd/conf/httpd.conf 

Pilihan DocumentRootkonfigurasi akan kelihatan seperti ini:

DocumentRoot "/var/www/html"

Sekarang, mari pastikan mod_rewritemodul Apache dimuatkan. Kita boleh melakukan ini dengan mencari fail konfigurasi modul asas Apache untuk istilah " mod_rewrite".

Buka fail:

sudo vi /etc/httpd/conf.modules.d/00-base.conf

Cari istilah mod_rewrite.

Sekiranya mod_rewritemodul Apache dimuatkan, anda akan mendapati garisan konfigurasi seperti ini:

LoadModule rewrite_module modules/mod_rewrite.so

Jika garisan di atas bermula dengan separa titik kolon, anda perlu mengeluarkan semak kolon untuk membatalkan nota garisan dan memuat modul. Ini tentu saja berlaku untuk modul Apache yang diperlukan juga.

Kita sekarang perlu mengedit fail konfigurasi lalai Apache agar mod_rewriteberfungsi dengan betul dengan ProcessWire CMS.

Buka fail:

sudo vi /etc/httpd/conf/httpd.conf

Kemudian cari bahagian yang bermula dengan <Directory "/var/www/html">dan tukar AllowOverride noneke AllowOverride All. Hasil akhirnya (dengan semua komen dikeluarkan) akan kelihatan seperti ini:

<Directory "/var/www/html">
    Options Indexes FollowSymLinks
    AllowOverride All
    Require all granted
</Directory>

Sekarang simpan dan tutup fail konfigurasi Apache.

Kami akan memulakan semula Apache pada akhir tutorial ini, tetapi memulakan semula Apache secara berkala semasa pemasangan dan konfigurasi pastinya merupakan kebiasaan yang baik, jadi mari kita lakukan sekarang:

sudo systemctl restart httpd

Langkah 4: Buka Port Firewall Web

Sekarang kita perlu membuka lalai HTTPdan HTTPSpelabuhan kerana mereka akan disekat firewalldsecara lalai.

Buka port firewall:

sudo firewall-cmd --permanent --add-port=80/tcp
sudo firewall-cmd --permanent --add-port=443/tcp

Muat semula firewall untuk menerapkan perubahan:

sudo firewall-cmd --reload

Anda akan melihat perkataan yang successdipaparkan di terminal anda selepas setiap perintah konfigurasi firewall yang berjaya.

Kita dapat dengan cepat mengesahkan bahawa HTTPport Apache terbuka dengan mengunjungi alamat IP atau domain contoh pelayan dalam penyemak imbas:

http://YOUR_VULTR_IP_ADDRESS/

Anda akan melihat laman web Apache lalai dalam penyemak imbas anda.

Langkah 5: Lumpuhkan SELinux (jika diaktifkan)

SELinux bermaksud "Security Enhanced Linux". Ini adalah peningkatan keselamatan untuk Linux yang membolehkan pengguna dan pentadbir lebih banyak mengawal kawalan akses. Ia dilumpuhkan secara lalai pada contoh Vultr CentOS 7, tetapi kami akan merangkumi langkah-langkah untuk menonaktifkannya, sekiranya anda tidak memulakan dari pemasangan yang bersih dan ia diaktifkan sebelumnya.

Untuk mengelakkan masalah kebenaran fail dengan ProcessWire CMS, kita perlu memastikan SELinux dilumpuhkan.

Pertama, mari kita periksa sama ada SELinux diaktifkan atau dilumpuhkan dengan sestatusarahan:

sudo sestatus

Sekiranya anda melihat sesuatu seperti: SELinux status: disabledmaka ia pasti dilumpuhkan dan anda boleh melangkah terus ke langkah seterusnya. Sekiranya anda melihat mesej lain, anda perlu melengkapkan bahagian ini.

Buka fail konfigurasi SELinux dengan editor terminal kegemaran anda:

sudo vi /etc/selinux/config

Tukar SELINUX=enforcingke SELINUX=disableddan kemudian simpan fail.

Untuk menerapkan perubahan konfigurasi, SELinux memerlukan reboot pelayan, jadi anda boleh memulakan semula pelayan menggunakan panel kawalan Vultr atau anda hanya boleh menggunakan shutdownperintah:

sudo shutdown -r now

Semasa pelayan reboot, sesi SSH anda akan terputus dan anda mungkin melihat mesej yang memberitahu anda mengenai 'broken pipe'atau 'Connection closed by remote host'. Ini tidak perlu dibimbangkan, tunggu selama 20 saat atau lebih dan kemudian SSH masuk semula (dengan nama pengguna dan domain anda sendiri):

ssh user1@YOUR_DOMAIN

Atau (dengan nama pengguna dan alamat IP anda sendiri):

ssh user1@YOUR_VULTR_IP_ADDRESS

Sebaik sahaja anda log masuk semula, anda harus menyemak status SELinux sekali lagi dengan sestatusarahan untuk memastikannya dilumpuhkan dengan betul:

sudo sestatus

Anda akan melihat mesej yang mengatakan SELinux status: disabled. Sekiranya anda melihat mesej yang mengatakan SELinux status: enabled(atau sesuatu yang serupa) anda perlu mengulangi langkah di atas dan memastikan bahawa anda memulakan semula pelayan anda dengan betul.

Langkah 6: Pasang PHP 7.1

CentOS 7 menghendaki kami menambahkan repo luaran untuk memasang PHP 7.1, jadi jalankan arahan berikut:

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

Kita sekarang boleh memasang PHP 7.1 bersama dengan semua modul PHP yang diperlukan oleh ProcessWire CMS:

sudo yum -y install php71w php71w-gd php71w-mbstring php71w-mysql php71w-xml php71w-common php71w-pdo

Langkah 7: Pasang Pelayan MariaDB (MySQL)

CentOS 7 lalai untuk menggunakan pelayan pangkalan data MariaDB, yang merupakan sumber terbuka, komuniti terbuka, komuniti maju, penggantian drop-in untuk pelayan MySQL.

Pasang pelayan pangkalan data MariaDB:

sudo yum -y install mariadb-server

Mulakan dan aktifkan pelayan MariaDB secara automatik semasa boot:

sudo systemctl enable mariadb
sudo systemctl start mariadb    

Selamatkan pemasangan pelayan MariaDB anda:

sudo mysql_secure_installation

Kata rootlaluan akan kosong, jadi tekan enter ketika diminta rootkata laluan.

Apabila diminta untuk mencipta pengguna MariaDB / MySQL root, pilih "Y" (untuk ya) dan kemudian masukkan rootkata laluan selamat . Cukup jawab "Y" untuk semua soalan ya / tidak yang lain kerana cadangan lalai adalah pilihan yang paling selamat.

Langkah 8: Buat Pangkalan Data untuk ProcessWire CMS

Masuk ke dalam shell MariaDB sebagai rootpengguna MariaDB dengan menjalankan perintah berikut:

sudo mysql -u root -p

Untuk mengakses prompt perintah MariaDB, masukkan rootkata laluan MariaDB apabila diminta.

Jalankan pertanyaan berikut untuk membuat pangkalan data MariaDB dan pengguna pangkalan data untuk ProcessWire CMS:

CREATE DATABASE pw_db CHARACTER SET utf8 COLLATE utf8_general_ci;
CREATE USER 'pw_user'@'localhost' IDENTIFIED BY 'UltraSecurePassword';
GRANT ALL PRIVILEGES ON pw_db.* TO 'pw_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;

Anda boleh mengganti nama pangkalan data pw_dbdan nama pengguna pw_userdengan sesuatu yang lebih sesuai dengan keinginan anda, jika anda mahu. (Harap maklum bahawa panjang maksimum lalai untuk nama pengguna dalam MariaDB pada CentOS 7 adalah 16 aksara). Juga, pastikan anda mengganti "UltraSecurePassword" dengan kata laluan yang benar-benar selamat.

Langkah 9: Pasang File CMS ProcessWire

Tukar direktori kerja semasa anda ke direktori web lalai:

cd /var/www/html/

Sekiranya anda mendapat mesej ralat yang mengatakan sesuatu seperti 'No such file or directory'itu, cubalah arahan berikut:

cd /var/www/ ; sudo mkdir html ; cd html

Direktori kerja semasa anda kini berada: /var/www/html/. Anda boleh memeriksanya dengan perintah pwd(direktori kerja cetak):

pwd

Sekarang gunakan wgetuntuk memuat turun pakej pemasangan ProcessWire CMS:

sudo wget https://github.com/processwire/processwire/archive/master.zip

Sila ambil perhatian: Anda semestinya perlu menyemak versi terbaru dengan melawat halaman muat turun ProcessWire CMS .

Senaraikan direktori semasa untuk memastikan bahawa anda berjaya memuat turun fail:

ls -la

Keluarkan index.html:

sudo rm index.html

Mari pasang dengan cepat unzipsupaya kami dapat membuka zip fail:

sudo yum -y install unzip

Sekarang batalkan fail arkib zip:

sudo unzip master.zip

Pindahkan semua fail pemasangan ke direktori root web:

sudo mv processwire-master/* /var/www/html

Tukar pemilikan fail web untuk mengelakkan masalah kebenaran:

sudo chown -R apache:apache * ./

Mulakan semula Apache sekali lagi:

sudo systemctl restart httpd

Langkah 10: Pemasangan CMS ProcessWire Lengkap

Kini sudah tiba masanya untuk melawat alamat IP contoh pelayan anda di pelayar anda, atau jika anda telah mengkonfigurasi tetapan DNS Vultr anda (dan memberi masa yang cukup untuk menyebarkannya), anda hanya dapat melawat domain anda.

Untuk mengakses halaman pemasangan ProcessWire CMS, masukkan alamat IP instance Vultr anda ke bar alamat penyemak imbas anda, diikuti oleh index.php:

http://YOUR_VULTR_IP_ADDRESS/install.php

Pemasang ProcessSWire CMS mengandungi banyak pilihan, jadi berikut adalah beberapa petunjuk untuk membantu anda:

  1. Pada halaman penyambungan ProcessWire CMS, klik Get Startedbutang untuk memulakan proses pemasangan.

  2. Sekarang pilih profil pemasangan pilihan anda (atau laman web demo) dan klik Continue.

  3. Anda akan melihat Compatibility Checkhalaman. Sekiranya anda melihat sebarang kesilapan, ini mungkin bermaksud anda kehilangan beberapa modul PHP atau mempunyai masalah kebenaran, jika tidak, anda hanya boleh mengklik Continue.

  4. Masukkan nilai berikut ke dalam MySQL Database Settingshalaman:

    DB Name:            pw_db
    DB User:            pw_user
    DB Pass:            UltraSecurePassword
    DB Host:            localhost
    DB Port:            3306
    
  5. Anda boleh membiarkan File Permissiontetapan pada nilai lalai, atau anda boleh menyesuaikannya jika anda memahami implikasinya.

  6. Anda boleh memasukkan nama hina laman web masa depan di bahagian yang sesuai, atau anda boleh mengedit site/config.phpfail kemudian jika anda lebih suka.

  7. Klik Continueuntuk mengkonfigurasi pangkalan data dan memasang fail CMS ProcessWire.

  8. Seterusnya, pilih pilihan anda Admin Theme.

  9. Anda boleh menukar Admin URLjika anda lebih suka, atau anda boleh tinggalkannya pada nilai lalai.

  10. Masukkan Admin Login Detailsseperti yang ditunjukkan di bawah:

    User (a-z 0-9):     <admin username>
    Password:           <admin password>
    Password (again):   <same admin password>
    Email Address:      <admin email address>
    
  11. Setelah semua butiran yang sesuai dimasukkan, anda boleh mengklik Continueuntuk menyelesaikan pemasangan ProcessWire.

  12. Setelah pemasangan selesai, klik pada Login to Adminbutang untuk log masuk bahagian Admin.

Anda mungkin melihat amaran yang mengatakan sesuatu seperti:

Warning: your server locale is undefined and may cause issues. Please add this to /site/config.php file (adjust en_US.UTF-8â₠as needed): setlocale(LC_ALL,'en_US.UTF-8');

Anda boleh membetulkan ralat ini dengan mengedit site/config.phpfail:

sudo vi site/config.php

Tambahkan nilai yang sesuai pada akhir fail:

setlocale(LC_ALL,'en_GB.utf8');

Sekiranya anda tidak dapat mengetahui nilai apa yang harus digunakan, anda dapat mencari senarai nilai yang sesuai untuk contoh pelayan tertentu anda dengan menjalankan localeperintah:

locale -a

Jangan lupa simpan dan keluar dari site/config.phpfail apabila anda selesai mengedit.

Untuk tujuan keselamatan, pastikan anda mengubah kebenaran pada site/config.phpfail:

sudo chmod 400 site/config.php

Mulakan semula Apache.

sudo systemctl restart httpd

Anda sudah bersedia untuk menambah kandungan anda dan mengkonfigurasi rupa dan nuansa laman web anda. Pastikan anda menyemak dokumentasi CMS ProcessWire yang sangat baik untuk mendapatkan maklumat lanjut mengenai cara membina dan mengkonfigurasi tapak anda.



Leave a Comment

Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1

Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1

Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1

6 Perkara Yang Sangat Menggila Tentang Nintendo Switch

6 Perkara Yang Sangat Menggila Tentang Nintendo Switch

Ramai daripada anda tahu Switch akan keluar pada Mac 2017 dan ciri baharunya. Bagi yang tidak tahu, kami telah menyediakan senarai ciri yang menjadikan 'Tukar' sebagai 'gajet yang mesti ada'.

Janji Teknologi Yang Masih Tidak Ditepati

Janji Teknologi Yang Masih Tidak Ditepati

Adakah anda menunggu gergasi teknologi memenuhi janji mereka? semak apa yang masih belum dihantar.

Fungsi Lapisan Seni Bina Rujukan Data Besar

Fungsi Lapisan Seni Bina Rujukan Data Besar

Baca blog untuk mengetahui lapisan berbeza dalam Seni Bina Data Besar dan fungsinya dengan cara yang paling mudah.

Bagaimana AI Boleh Mengambil Automasi Proses ke Tahap Seterusnya?

Bagaimana AI Boleh Mengambil Automasi Proses ke Tahap Seterusnya?

Baca ini untuk mengetahui cara Kecerdasan Buatan semakin popular di kalangan syarikat berskala kecil dan cara ia meningkatkan kebarangkalian untuk menjadikan mereka berkembang dan memberikan pesaing mereka kelebihan.

CAPTCHA: Berapa Lama Ia Boleh Kekal Sebagai Teknik Berdaya maju Untuk Perbezaan Manusia-AI?

CAPTCHA: Berapa Lama Ia Boleh Kekal Sebagai Teknik Berdaya maju Untuk Perbezaan Manusia-AI?

CAPTCHA telah menjadi agak sukar untuk diselesaikan oleh pengguna dalam beberapa tahun kebelakangan ini. Adakah ia dapat kekal berkesan dalam pengesanan spam dan bot pada masa hadapan?

Keunikan Teknologi: Masa Depan Tamadun Manusia yang Jauh?

Keunikan Teknologi: Masa Depan Tamadun Manusia yang Jauh?

Apabila Sains Berkembang pada kadar yang pantas, mengambil alih banyak usaha kita, risiko untuk menundukkan diri kita kepada Ketunggalan yang tidak dapat dijelaskan juga meningkat. Baca, apakah makna ketunggalan bagi kita.

Teleperubatan Dan Penjagaan Kesihatan Jauh: Masa Depan Ada Di Sini

Teleperubatan Dan Penjagaan Kesihatan Jauh: Masa Depan Ada Di Sini

Apakah teleperubatan, penjagaan kesihatan jauh dan impaknya kepada generasi akan datang? Adakah ia tempat yang baik atau tidak dalam situasi pandemik? Baca blog untuk mencari paparan!

Pernahkah Anda Terfikir Bagaimana Penggodam Mendapatkan Wang?

Pernahkah Anda Terfikir Bagaimana Penggodam Mendapatkan Wang?

Anda mungkin pernah mendengar bahawa penggodam memperoleh banyak wang, tetapi pernahkah anda terfikir bagaimana mereka memperoleh wang seperti itu? Mari berbincang.

Kemas Kini Tambahan macOS Catalina 10.15.4 Menyebabkan Lebih Banyak Isu Daripada Penyelesaian

Kemas Kini Tambahan macOS Catalina 10.15.4 Menyebabkan Lebih Banyak Isu Daripada Penyelesaian

Baru-baru ini Apple mengeluarkan macOS Catalina 10.15.4 kemas kini tambahan untuk menyelesaikan masalah tetapi nampaknya kemas kini itu menyebabkan lebih banyak masalah yang membawa kepada pemusnahan mesin mac. Baca artikel ini untuk mengetahui lebih lanjut