איך להתקין שרת LAMP על RHEL, CentOS, Rocky & AlmaLinux

A LAMP stack is a collection of four different software (Linux, Apache, MySQL, and PHP) that programmers or web developers use to create and deploy websites or applications.

המדריך הזה יתמקד באיך להתקין ולהגדיר את מערכת ה-LAMP המוכרת עם PhpMyAdmin על הגרסה האחרונה של RHEL ובהפצות המבוססות על RHEL כמו CentOS, Oracle Linux, Rocky, ו-AlmaLinux.

דרישות

בהתאם להפצה השומשה, השתמש בקישורים הבאים כדי לבצע התקנת מערכת מינימלית, בשימוש בכתובת IP סטטית להגדרת הרשת.

שלב 1: להתקין שרת אפאצ'י

1. לאחר ביצוע התקנת מערכת מינימלית והגדרת ממשק הרשת של השרת שלך עם כתובת IP סטטית, קדימה והתקן את שירות Apache (httpd) מהחבילה הבינארית המסופקת מהמאגרים הרשמיים באמצעות הפקודת yum הבאה.

# yum install httpd
Install Apache on Linux

2. לאחר הסיום ההתקנה של Apache, השתמש בפקודות הבאות כדי לנהל את דבר ה-Apache מאחר ש-RHEL ו-CentOS העבירו בין היתר את תכניות ה-init שלהם מ-SysV ל-Systemdמדוע הוחלף init ב-Linux עם Systemd?.

# systemctl start httpd
# systemctl enable httpd
# systemctl status httpd
Manage Apache in Linux

3. בשלב הבא, ודא שאפשר לגשת ל-Apache על ידי פתיחת מספרי היציאות 80 ו-443 בחשבון האשפה באמצעות firewall-cmd, שהוא הפקודה הברורה לניהול Firewalld דרך דבר.

# firewall-cmd --add-service=http
# firewall-cmd --add-service=https
# systemctl restart firewalld
NOTE: Make notice that using this rule will lose its effect after a system reboot or firewalld service restart because it opens on-fly rules, which are not applied permanently.

כדי ליישם קביעות כללית של כללי iptables על האשפה באמצעות אפשרות ה---permanent ולהפעיל מחדש את שירות firewalld כדי לקבל השפעה.

# firewall-cmd --permanent --add-service=http
# firewall-cmd --permanent --add-service=https
# systemctl restart firewalld
Open Apache Ports in Firewalld

כמה פקודות חשובות Firewalld לניהול הבורר כמתואר להלן:

# firewall-cmd --state
# firewall-cmd --list-all
# firewall-cmd --list-interfaces
# firewall-cmd --get-service
# firewall-cmd --query-service service_name
# firewall-cmd --add-port=80/tcp

4. כדי לאמת את הפונקציונליות של Apache פתח דפדפן רחוק והקלד את כתובת ה-IP של השרת שלך בשימוש בשיטת HTTP בכתובת האתר, ודף ברירת מחדל צריך להופיע כמו בתיעוד הבא.

http://server_IP
Verify Apache in Linux

5. לעת עתה, מסלול DocumentRoot של אפטי מוגדר ל-/var/www/html מסלול מערכת, שברירת מחדל אינה מספקת קובץ אינדקס. אם אתה רוצה לראות רשימת קבצים של ה-DocumentRoot שלך.

פתח את קובץ ההגדרות של אפטי welcome והגדר את ההצהרה Indexes מ- ל-+ על הוראת LocationMatch, כמו בתיעוד הבא.

# vi /etc/httpd/conf.d/welcome.conf
Configure Apache Welcome Page

6. לאחר שבוצעו שינויים, סגור את הקובץ, הפעל מחדש את שירות אפטי כדי לשקף את השינויים, וטען מחדש את דף הדפדפן שלך כדי לראות את התוצאה הסופית.

# systemctl restart httpd
Apache Directory Listing

שלב 2: התקנת תמיכת PHP עבור Apache

7. לפני התקנת PHP תמיכת השפה הדינמית עבור Apache, קבל רשימה מלאה של מודולים והרחבות PHP הזמינים באמצעות הפקודה הבאה.

# yum search php
List PHP Modules

8. תלוי בסוג היישומים שאתה רוצה להשתמש, התקן את המודולים הנדרשים PHP מהרשימה לעיל, אך לתמיכה בסיסית ב-MySQL/MariaDB ב-PHP וב-PhpMyAdmin אתה צריך להתקין את המודולים הבאים.

# yum install php php-mysql php-pdo php-gd php-mbstring
Install PHP Modules

9.כדי לקבל רשימת מידע מלאה על PHP מהדפדפן שלך, צור קובץ info.php בשורש המסמך של Apache באמצעות הפקודה הבאה, הפעל מחדש את שירות httpd, ונחה את הדפדפן שלך אל כתובת http://server_IP/info.php.

# echo "<?php phpinfo(); ?>" > /var/www/html/info.php
# systemctl restart httpd
List PHP Information

10. אם אתה מקבל שגיאה בנושא זמן ואזור זמן של PHP, פתח את קובץ התצורה php.ini, חפש ובטל את הערה של date.timezone, הוסף את מיקומך הפיזי, והפעל מחדש את הדמון של Apache.

# vi /etc/php.ini

אתר ושנה את השורה date.timezone כך שתראה כמו זה, באמצעות רשימת אזורי זמן נתמכים ב־PHP.

date.timezone = Continent/City
Set PHP Timezone

שלב 3: התקן והגדר מסד נתונים של MariaDB

11. ההפצה RHEL החליפה מ־MySQL ל־MariaDB כמנהל מסד הנתונים המוגדר כברירת מחדל שלה. כדי להתקין את מסד הנתונים של MariaDB השתמש בפקודה הבאה.

# yum install mariadb-server mariadb
Install MariaDB on Linux

12. לאחר התקנת חבילת MariaDB, הפעל את שירות מסד הנתונים והשתמש בתסריט mysql_secure_installation כדי לאבטח את מסד הנתונים (הגדר סיסמת root, השבת כניסה מרחוק מהמנהל, הסר את מסד הנתונים לבדיקה, והסר משתמשים אנונימיים).

# systemctl start mariadb
# systemctl enable mariadb
# systemctl status mariadb
# mysql_secure_installation
Manage MariaDB Service
Secure MariaDB in Linux

13. כדי לבדוק את פעילות מסד הנתונים התחבר ל־MariaDB באמצעות חשבון ה־root שלו וצא באמצעות ההצהרה quit.

mysql -u root -p
MariaDB > show databases;
MariaDB > quit
Connect MariaDB to Linux

שלב 4: התקנת PhpMyAdmin לניהול MySQL

14. ברירת המחדל של המאגרים הרשמיים לא מספקת חבילת בינארי עבור ממשק האינטרנט של PhpMyAdmin. אם אינך נוח להשתמש בפקודת השורת פקודה של MySQL לניהול מסד הנתונים שלך, תוכל להתקין את חבילת PhpMyAdmin על ידי הפעלת מאגר המידע remi באמצעות הפקודה הבאה.

# yum install -y https://rpms.remirepo.net/enterprise/remi-release-9.rpm  [On CentOS/RHEL 8]
# yum install -y https://rpms.remirepo.net/enterprise/remi-release-8.rpm  [On CentOS/RHEL 8]
# yum install -y https://rpms.remirepo.net/enterprise/remi-release-7.rpm  [On CentOS/RHEL 7]

לאחר הפעלת מאגר המידע remi, המשך והתקן את PhpMyAdmin.

# yum install phpmyadmin
Install PhpMyAdmin on Linux

15. המשך והגדר את PhpMyAdmin כך שתאפשר חיבורים ממארחים מרוחקים על ידי עריכת קובץ phpmyadmin.conf, הנמצא בתיקיית conf.d של Apache, והפעלת הערות על השורות הבאות.

# vi /etc/httpd/conf.d/phpMyAdmin.conf

הוסף את השורה "Require all granted" מתחת לשורה "Require local" כפי שמוצג.

<Directory /usr/share/phpMyAdmin/>
   AddDefaultCharset UTF-8
   Require local
   Require all granted
</Directory>
Allow Remote PhpMyAdmin Access

16. כדי להיכנס לממשק האינטרנט של PhpMyAdmin, הפעל מחדש את שירות האפאצ'י ונתב את הדפדפן שלך לכתובת ה-URL.

# systemctl restart httpd

http://server_IP/phpmyadmin/
PhpMyAdmin Dashboard

שלב 5: הפעלת מערכת LAMP ברמת המערכת ב-Linux

17. אם נדרש לך שהשירותים של MariaDB ו-Apache יופעלו באופן אוטומטי לאחר האתחול, הפעל את הפקודות הבאות כדי לאפשר להם להיפעל ברמת המערכת.

# systemctl enable mariadb
# systemctl enable httpd

זה כל מה שנדרש עבור התקנת LAMP בהתקנות של RHEL. הסדרה הבאה של מאמרים הקשורים למערכת ה- LAMP תטפל ביצירת מארחים וירטואליים, יצירת תעודות SSL ומפתחות, והוספת תמיכה בעסקאות SSL עבור שרת Apache HTTP.

Source:
https://www.tecmint.com/install-lamp-server-linux/