ติดตั้ง Drupal 8 ใน RHEL, CentOS และ Fedora
Drupal เป็น ระบบการจัดการเนื้อหา (CMS) แบบโอเพ่นซอร์ส ยืดหยุ่น ปรับขนาดได้สูง และปลอดภัย ซึ่งช่วยให้ผู้ใช้สามารถสร้างและสร้างเว็บไซต์ได้อย่างง่ายดาย สามารถขยายได้โดยใช้โมดูลและช่วยให้ผู้ใช้สามารถเปลี่ยนการจัดการเนื้อหาให้เป็นโซลูชันดิจิทัลที่ทรงพลังได้
Drupal ทำงานบนเว็บเซิร์ฟเวอร์เช่น Apache, IIS, Lighttpd, Cherokee, Nginx และฐานข้อมูลส่วนหลัง MySQL, MongoDB, MariaDB, PostgreSQL, SQLite, MS SQL Server
ในบทความนี้ เราจะแสดงวิธีการติดตั้งและกำหนดค่า Drupal 8 ด้วยตนเองบน RHEL 7/6, CentOS 7/6 และ Fedora 20-25 การกระจายโดยใช้การตั้งค่า LAMP
ข้อกำหนดของ Drupal:
- Apache 2.x (แนะนำ)
- PHP 5.5.9 หรือสูงกว่า (แนะนำ 5.5)
- MySQL 5.5.3 หรือ MariaDB 5.5.20 พร้อมด้วย PHP Data Objects (PDO)
สำหรับการตั้งค่านี้ ฉันใช้ชื่อโฮสต์ของเว็บไซต์เป็น “drupal.linux-console.net” และที่อยู่ IP คือ “192.168.0.104“ การตั้งค่าเหล่านี้อาจแตกต่างกันไปตามสภาพแวดล้อมของคุณ ดังนั้นโปรดทำการเปลี่ยนแปลงตามความเหมาะสม
ขั้นตอนที่ 1: การติดตั้ง Apache เว็บเซิร์ฟเวอร์
1. ก่อนอื่นเราจะเริ่มต้นด้วยการติดตั้งเว็บเซิร์ฟเวอร์ Apache จากแหล่งเก็บข้อมูลอย่างเป็นทางการ:
yum install httpd
2. หลังจากการติดตั้งเสร็จสิ้น บริการจะถูกปิดใช้งานในตอนแรก ดังนั้น เราจำเป็นต้องเริ่มบริการด้วยตนเองในช่วงเวลาระหว่างนี้ และเปิดใช้งานให้เริ่มโดยอัตโนมัติจากการบูตระบบครั้งถัดไปเช่นกัน:
------------- On SystemD - CentOS/RHEL 7 and Fedora 22+ -------------
systemctl start httpd
systemctl enable httpd
------------- On SysVInit - CentOS/RHEL 6 and Fedora -------------
service httpd start
chkconfig --level 35 httpd on
3. ถัดไป เพื่ออนุญาตการเข้าถึงบริการ Apache จาก HTTP และ HTTPS เราจะต้องเปิด 80 และพอร์ต 443 โดยที่ HTTPD daemon กำลังฟังดังนี้:
------------- On FirewallD - CentOS/RHEL 7 and Fedora 22+ -------------
firewall-cmd --permanent --zone=public --add-service=http
firewall-cmd --permanent --zone=public --add-service=https
firewall-cmd --reload
------------- On IPtables - CentOS/RHEL 6 and Fedora 22+ -------------
iptables -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp -m tcp --dport 443 -j ACCEPT
service iptables save
service iptables restart
4. ตอนนี้ตรวจสอบว่า Apache ทำงานได้ดี เปิดเบราว์เซอร์ระยะไกลและพิมพ์ที่อยู่ IP ของเซิร์ฟเวอร์ของคุณโดยใช้โปรโตคอล HTTP ใน URL:http://server_IP
และค่าเริ่มต้น หน้า Apache2 ควรปรากฏตามภาพหน้าจอด้านล่าง
ขั้นตอนที่ 2: ติดตั้งการสนับสนุน PHP สำหรับ Apache
5. จากนั้น ติดตั้ง PHP และโมดูล PHP ที่จำเป็น
yum install php php-mbstring php-gd php-xml php-pear php-fpm php-mysql php-pdo php-opcache
ข้อสำคัญ: หากคุณต้องการติดตั้ง PHP 7.0 คุณต้องเพิ่มที่เก็บข้อมูลต่อไปนี้: EPEL และ Webtactic เพื่อติดตั้ง PHP 7.0 โดยใช้ yum:
------------- Install PHP 7 in CentOS/RHEL and Fedora -------------
rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
yum install php70w php70w-opcache php70w-mbstring php70w-gd php70w-xml php70w-pear php70w-fpm php70w-mysql php70w-pdo
6. ต่อไป หากต้องการรับข้อมูลทั้งหมดเกี่ยวกับการติดตั้ง PHP และการกำหนดค่าปัจจุบันทั้งหมดจากเว็บเบราว์เซอร์ เรามาสร้างไฟล์ info.php
ใน Apache DocumentRoot (/var/www/html
) โดยใช้คำสั่งต่อไปนี้
echo "<?php phpinfo(); ?>" > /var/www/html/info.php
จากนั้นรีสตาร์ทบริการ HTTPD และป้อน URL http://server_IP/info.php
ในเว็บเบราว์เซอร์
systemctl restart httpd
OR
service httpd restart
ขั้นตอนที่ 3: ติดตั้งและกำหนดค่าฐานข้อมูล MariaDB
7. สำหรับข้อมูลของคุณ Red Hat Enterprise Linux/CentOS 7.0 ได้ย้ายจากการรองรับ MySQL ไปเป็น MariaDB เป็นค่าเริ่มต้น ระบบจัดการฐานข้อมูล.
หากต้องการติดตั้งฐานข้อมูล MariaDB คุณต้องเพิ่มพื้นที่เก็บข้อมูล MariaDB อย่างเป็นทางการต่อไปนี้ลงในไฟล์ /etc/yum.repos.d/MariaDB.repo
ดังที่แสดง
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.1/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
เมื่อไฟล์ repo เรียบร้อยแล้ว คุณสามารถติดตั้ง MariaDB ได้ดังนี้:
yum install mariadb-server mariadb
8. เมื่อการติดตั้งแพ็คเกจ MariaDB เสร็จสิ้น ให้สตาร์ท daemon ฐานข้อมูลในช่วงเวลาเฉลี่ย และเปิดใช้งานให้เริ่มโดยอัตโนมัติในการบู๊ตครั้งถัดไป
------------- On SystemD - CentOS/RHEL 7 and Fedora 22+ -------------
systemctl start mariadb
systemctl enable mariadb
------------- On SysVInit - CentOS/RHEL 6 and Fedora -------------
service mysqld start
chkconfig --level 35 mysqld on
9. จากนั้นเรียกใช้สคริปต์ mysql_secure_installation
เพื่อรักษาความปลอดภัยฐานข้อมูล (ตั้งรหัสผ่านรูท ปิดการใช้งานการเข้าสู่ระบบรูทระยะไกล ลบฐานข้อมูลทดสอบ และลบผู้ใช้ที่ไม่ระบุชื่อ) ดังนี้:
mysql_secure_installation
ขั้นตอนที่ 4: ติดตั้งและกำหนดค่า Drupal 8 ใน CentOS
10. ที่นี่ เราจะเริ่มต้นด้วยการดาวน์โหลด Drupal เวอร์ชันล่าสุด (เช่น 8.2.6) โดยใช้คำสั่ง wget หากคุณไม่ได้ติดตั้งแพ็คเกจ wget และ gzip ให้ใช้คำสั่งต่อไปนี้เพื่อติดตั้ง:
yum install wget gzip
wget -c https://ftp.drupal.org/files/projects/drupal-8.2.6.tar.gz
11. หลังจากนั้น ให้แตกไฟล์ tar และย้ายโฟลเดอร์ Drupal ไปยัง Apache Document Root (/var/www/html
)
tar -zxvf drupal-8.2.6.tar.gz
mv drupal-8.2.6 /var/www/html/drupal
12. จากนั้น สร้างไฟล์การตั้งค่า settings.php
จากไฟล์การตั้งค่าตัวอย่าง default.settings.php
) ในโฟลเดอร์ (/var/www/html/drupal/sites/default) จากนั้นตั้งค่าการอนุญาตที่เหมาะสมบนไดเร็กทอรีไซต์ Drupal รวมถึงไดเร็กทอรีย่อยและไฟล์ดังต่อไปนี้:
cd /var/www/html/drupal/sites/default/
cp default.settings.php settings.php
chown -R apache:apache /var/www/html/drupal/
13. ที่สำคัญ ให้ตั้งค่ากฎ SELinux บนโฟลเดอร์ “/var/www/html/drupal/sites/ ” ตามด้านล่างนี้:
chcon -R -t httpd_sys_content_rw_t /var/www/html/drupal/sites/
14. ตอนนี้เราต้องสร้างฐานข้อมูลและผู้ใช้สำหรับเว็บไซต์ Drupal เพื่อจัดการ
mysql -u root -p
Enter password:
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MySQL connection id is 12
Server version: 5.1.73 Source distribution
Copyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MySQL [(none)]> create database drupal;
Query OK, 1 row affected (0.00 sec)
MySQL [(none)]> create user ravi@localhost identified by 'tecmint123';
Query OK, 0 rows affected (0.00 sec)
MySQL [(none)]> grant all on drupal.* to ravi@localhost;
Query OK, 0 rows affected (0.00 sec)
MySQL [(none)]> flush privileges;
Query OK, 0 rows affected (0.00 sec)
MySQL [(none)]> exit
Bye
15. ในที่สุด ณ จุดนี้ ให้เปิด URL: http://server_IP/drupal/
เพื่อเริ่มตัวติดตั้งเว็บ และเลือกภาษาการติดตั้งที่คุณต้องการแล้วคลิก บันทึกเพื่อดำเนินการต่อ
16. จากนั้นเลือกโปรไฟล์การติดตั้ง เลือก มาตรฐาน และคลิก บันทึก เพื่อดำเนินการต่อ
17. ตรวจสอบข้อกำหนดและเปิดใช้งาน URL ที่สะอาดก่อนที่จะดำเนินการต่อ
ตอนนี้เปิดใช้งาน drupal URL ที่สะอาดภายใต้การกำหนดค่า Apache ของคุณ
vi /etc/httpd/conf/httpd.conf
ตรวจสอบให้แน่ใจว่าได้ตั้งค่า AllowOverride All เป็นไดเรกทอรีเริ่มต้น DocumentRoot /var/www/html ดังที่แสดงในภาพหน้าจอด้านล่าง
18. เมื่อคุณเปิดใช้งาน Clean URL สำหรับ Drupal แล้ว ให้รีเฟรชหน้าเพื่อทำการกำหนดค่าฐานข้อมูลจากอินเทอร์เฟซด้านล่าง ป้อนชื่อฐานข้อมูลไซต์ Drupal ผู้ใช้ฐานข้อมูล และรหัสผ่านของผู้ใช้
เมื่อกรอกรายละเอียดฐานข้อมูลทั้งหมดแล้ว ให้คลิก บันทึกและดำเนินการต่อ
หากการตั้งค่าข้างต้นถูกต้อง การติดตั้งไซต์ drupal ควรเริ่มต้นได้สำเร็จตามอินเทอร์เฟซด้านล่าง
19. ถัดไปกำหนดค่าไซต์โดยการตั้งค่าสำหรับ (ใช้ค่าที่ใช้กับสถานการณ์ของคุณ):
- ชื่อไซต์ – ไซต์ TecMint Drupal
- ที่อยู่อีเมลของไซต์ – [ป้องกันอีเมล]
- ชื่อผู้ใช้ – ผู้ดูแลระบบ
- รหัสผ่าน – ##########
- ที่อยู่อีเมลของผู้ใช้ – [ป้องกันอีเมล]
- ประเทศเริ่มต้น – อินเดีย
- เขตเวลาเริ่มต้น – UTC
หลังจากตั้งค่าที่เหมาะสมแล้ว คลิก บันทึกและดำเนินการต่อ เพื่อสิ้นสุดกระบวนการติดตั้งไซต์
20. อินเทอร์เฟซที่ตามมาแสดงการติดตั้งไซต์ Drupal 8 พร้อม LAMP stack สำเร็จ
ตอนนี้คุณสามารถคลิกที่ เพิ่มเนื้อหา เพื่อสร้างเนื้อหาเว็บตัวอย่าง เช่น หน้าเว็บ
ทางเลือก: สำหรับผู้ที่ไม่สะดวกใจที่จะใช้บรรทัดคำสั่ง MySQL ในการจัดการฐานข้อมูล ให้ติดตั้ง PhpMyAdmin เพื่อจัดการฐานข้อมูลจากอินเทอร์เฟซของเว็บเบราว์เซอร์
เยี่ยมชมเอกสาร Drupal: https://www.drupal.org/docs/8
นั่นคือทั้งหมด! ในบทความนี้ เราได้แสดงวิธีดาวน์โหลด ติดตั้ง และตั้งค่า LAMP stack และ Drupal 8 ด้วยการกำหนดค่าพื้นฐานบน CentOS 7 ใช้แบบฟอร์มคำติชมด้านล่างเพื่อเขียนกลับมาหาเราเกี่ยวกับบทช่วยสอนนี้ หรืออาจให้ข้อมูลที่เกี่ยวข้องแก่เรา