كيفية تثبيت MODX CMS و Nginx على CentOS 7

MODX هو نظام مجاني ومفتوح المصدر لإدارة المحتوى مكتوب بلغة PHP. يستخدم MySQL أو MariaDB لتخزين قاعدة البيانات الخاصة به. تم تصميم MODX للأعمال التي يكون فيها الحفاظ على موقع الويب أمرًا بالغ الأهمية. يوفر المرونة للمطورين لإنشاء موقع ويب عن طريق اختيار التصميم والهيكل الخاص بهم. كما يحتوي على WYSIWYGمحرر للمستخدمين غير التقنيين في العمل. بصرف النظر عن كونه مرنًا ، يمكن تحسينه للحصول على سرعة فائقة.

تمت كتابة هذا البرنامج التعليمي لـ MODX 2.6.1 وقد يعمل أيضًا على إصدارات أحدث.

المتطلبات الأساسية

في هذا البرنامج التعليمي ، سنستخدم modx.example.comكاسم المجال الموجه نحو مثيل Vultr. يرجى التأكد من استبدال جميع حالات اسم النطاق المثال بالاسم الفعلي.

قم بتحديث نظامك الأساسي باستخدام الدليل كيفية تحديث CentOS 7 . بمجرد تحديث النظام الخاص بك ، انتقل إلى تثبيت التبعيات.

قم بتثبيت Nginx

Nginx هو خادم إنتاج ويب لتشغيل تطبيقات الويب. قم بتثبيت Nginx.

sudo yum -y install epel-release
sudo yum -y install nginx

قم بتشغيل Nginx وتمكينه من التشغيل تلقائيًا في وقت التمهيد.

sudo systemctl start nginx
sudo systemctl enable nginx

تثبيت PHP 7.2

يدعم MODX جميع إصدارات PHP فوق 5.4. سنقوم بتثبيت أحدث إصدار متوفر من PHP. استخدام PHP 7.2 سيضمن السرعة القصوى والأمن. إضافة وتمكين مستودع Remi لأن PHP الإصدار 7.2 غير متوفر في YUMالمخزون الافتراضي .

sudo rpm -Uvh http://rpms.remirepo.net/enterprise/remi-release-7.rpm
sudo yum -y install yum-utils
sudo yum-config-manager --enable remi-php72

قم بتثبيت PHP الإصدار 7.2 مع الوحدات المطلوبة من قبل MODX.

sudo yum -y install php php-zlib php-mysqli php-curl php-json php-cli php-pear php-gd php-openssl php-xml php-mbstring php-fpm ImageMagick

قم بتحرير ملف تكوين PHP المحمل.

sudo nano /etc/php.ini

ابحث عن السطر التالي. فك التعليق وتعيين المنطقة الزمنية المناسبة.

date.timezone = Asia/Kolkata
;Replace "Asia/Kolkata" with your appropriate time zone

أيضًا ، قم بتعيين حد ذاكرة مناسب على السطر التالي. إعداده -1سيعطي ذاكرة متوفرة غير محدودة للنص.

memory_limit = -1

بعد ذلك ، ابحث عن السطر التالي وقم بتعيين قيمته إلى 0بعد إلغاء التثبيت.

cgi.fix_pathinfo=0

احفظ الملف وافتح php-fpmملف التهيئة.

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

ابحث عن القائمة listen = 127.0.0.1:9000، وعلق عليها وألحق سطرًا جديدًا كما هو موضح أدناه.

;listen = 127.0.0.1:9000
listen = /var/run/php-fpm/php-fpm.sock

أيضا ، قم بتغيير المستخدمين كما هو موضح أدناه.

listen.owner = nginx
listen.group = nginx

...

user = nginx
group = nginx

احفظ الملف وابدأ php-fpmوتمكينه من البدء تلقائيًا في وقت التمهيد.

sudo systemctl restart php-fpm
sudo systemctl enable php-fpm

توفير أذونات الكتابة إلى دليل الجلسة.

sudo mkdir /var/lib/php/session
sudo chmod -R 777 /var/lib/php/session

الآن ، انتقل إلى تثبيت MariaDB.

قم بتثبيت MariaDB

MariaDB هي شوكة في MySQL. أضف مستودع MariaDB إلى نظامك. YUMيحتوي المستودع الافتراضي على إصدار أقدم من MariaDB.

echo "[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.2/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1" | sudo tee /etc/yum.repos.d/mariadb.repo

قم بتثبيت MariaDB.

sudo yum -y install mariadb mariadb-server

قم بتشغيل MariaDB وتمكينه من البدء تلقائيًا في وقت التمهيد.

sudo systemctl start mariadb
sudo systemctl enable mariadb

قبل تكوين قاعدة البيانات ، ستحتاج إلى تأمين MariaDB.

sudo mysql_secure_installation

ستتم مطالبتك بكلمة مرور جذر MariaDB الحالية. بشكل افتراضي ، لا توجد كلمة مرور جذرية في تثبيت MariaDB جديد. اضغط على Enterمفتاح " " للمتابعة. قم بتعيين كلمة مرور قوية rootلمستخدم خادم MariaDB وأجب " Y" على جميع الأسئلة الأخرى التي يتم طرحها. الأسئلة المطروحة ذاتيّة.

قم بتسجيل الدخول إلى هيكل MySQL كجذر.

mysql -u root -p

أدخل كلمة المرور لمستخدم الجذر MariaDB لتسجيل الدخول.

قم بتشغيل الاستعلامات التالية لإنشاء قاعدة بيانات ومستخدم قاعدة بيانات لتثبيت MODX.

CREATE DATABASE modx_data CHARACTER SET utf8 COLLATE utf8_general_ci;
CREATE USER 'modx_user'@'localhost' IDENTIFIED BY 'StrongPassword';
GRANT ALL PRIVILEGES ON modx_data.* TO 'modx_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;

يمكنك استبدال اسم قاعدة البيانات واسم modx_dataالمستخدم modx_userوفقًا لاختيارك. يرجى التأكد من التغيير StrongPasswordإلى كلمة مرور قوية للغاية.

قم بتثبيت MODX

قم بتنزيل أرشيف MODX zip.

wget https://modx.com/download/direct?id=modx-2.6.1-pl.zip -O modx.zip

يمكنك دائمًا البحث عن رابط أحدث إصدار من التطبيق على صفحة تنزيل MODX .

قم بتثبيت فك الضغط.

sudo yum -y install unzip

استخرج الأرشيف في دليل webroot لـ Nginx.

sudo unzip modx.zip -d /usr/share/nginx/

قم بتغيير اسم الدليل.

cd /usr/share/nginx/
sudo mv modx-*/ modx/

أيضا ، إعادة تسمية ht.accessالملف .htaccess.

sudo mv /usr/share/nginx/modx/ht.access /usr/share/nginx/modx/.htaccess

إنشاء دليل ذاكرة التخزين المؤقت لجلسة العمل وتوفير الملكية لمستخدم nginx.

sudo mkdir /usr/share/nginx/modx/core/cache
sudo chown nginx:nginx /usr/share/nginx/modx/core/cache

أخيرًا ، قم بإنشاء ملف تكوين فارغ وقم بتوفير الأذونات المناسبة.

sudo touch /usr/share/nginx/modx/core/config/config.inc.php
sudo chown -R nginx:nginx /usr/share/nginx/

السماح لحركة المرور على منافذ 80و 443من خلال جدار الحماية.

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

إنشاء مضيف افتراضي

لاستضافة موقع MODX الخاص بك ، قم بإنشاء مضيف افتراضي جديد.

sudo nano /etc/nginx/conf.d/modx.example.com.conf

تعبئة الملف.

server {
        listen 80;
        server_name modx.example.com;
        root /usr/share/nginx/modx;
        index index.php;
        client_max_body_size 30M;
        location / {
                root /usr/share/nginx/modx;
                if (!-e $request_filename) {
                        rewrite ^/(.*)$ /index.php?q=$1 last;
                }
        }
        location ~ \.php$ {
                try_files $uri =404;
                fastcgi_split_path_info ^(.+\.php)(.*)$;
                fastcgi_pass   unix:/var/run/php-fpm/php-fpm.sock;
                fastcgi_index  index.php;
                fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
                include fastcgi_params;
                fastcgi_ignore_client_abort on;
                fastcgi_param  SERVER_NAME $http_host;
        }

        location ~ /\.ht {
                deny  all;
        }
}

اختبار تكوين خادم الويب Nginx.

sudo nginx -t

سترى الناتج التالي.

[user@vultr nginx]$ sudo nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

إذا لم تشاهد أي أخطاء في التكوين ، فأعد تشغيل Nginx حتى يصبح التكوين الجديد ساري المفعول.

sudo systemctl restart nginx

تغليف

قبل أن تتمكن من الوصول إلى التثبيت ، ستحتاج إلى إكمال التثبيت عبر مثبت الويب. الوصول إلى التثبيت على شبكة الإنترنت على http://modx.example.com/setup. سترى واجهة لتغيير لغة التثبيت.

اختر اللغة حسب تفضيلاتك وفي الصفحة التالية ، حدد New Installationخيار "". في الصفحة التالية ، قم بتقديم بيانات اعتماد قاعدة بيانات MySQL أو MariaDB وقم بإنشاء حساب مسؤول جديد. أخيرًا ، انقر فوق Installالزر " " وسيكتب المثبت بياناته في قاعدة البيانات.

في هذه المرحلة ، أنت جاهز لإنشاء موقعك على الويب من لوحة التحكم الإدارية.



Leave a Comment

كيفية تثبيت Neos CMS على FreeBSD 12

كيفية تثبيت Neos CMS على FreeBSD 12

استخدام نظام مختلف؟ Neos عبارة عن منصة تطبيق محتوى مع CMS وإطار تطبيق في جوهرها. سيوضح لك هذا الدليل كيفية التثبيت

كيفية تثبيت Omeka Classic 2.4 CMS على Fedora 26 LAMP VPS

كيفية تثبيت Omeka Classic 2.4 CMS على Fedora 26 LAMP VPS

استخدام نظام مختلف؟ Omeka Classic 2.4 CMS هو نظام نشر رقمي مجاني ومفتوح المصدر ونظام إدارة المحتوى (CMS) لمشاركة الصور الرقمية

كيفية تثبيت BlogoText CMS على Ubuntu 16.04 LAMP VPS

كيفية تثبيت BlogoText CMS على Ubuntu 16.04 LAMP VPS

استخدام نظام مختلف؟ BlogoText CMS هو نظام إدارة محتوى (CMS) بسيط وخفيف الوزن ومفتوح المصدر ومحرك مدونة بسيط

كيفية تثبيت WonderCMS على Fedora 29

كيفية تثبيت WonderCMS على Fedora 29

استخدام نظام مختلف؟ WonderCMS هو ملف CMS مفتوح المصدر وسريع وصغير مكتوب بلغة PHP. يتم استضافة كود مصدر WonderCMS على جيثب. فيل هذا الدليل

كيفية تثبيت Neos CMS على دبيان 9

كيفية تثبيت Neos CMS على دبيان 9

استخدام نظام مختلف؟ Neos عبارة عن منصة تطبيق محتوى مع CMS وإطار تطبيق في جوهرها. سيوضح لك هذا الدليل كيفية التثبيت

كيفية تثبيت Directus 6.4 CMS على Fedora 26 LAMP VPS

كيفية تثبيت Directus 6.4 CMS على Fedora 26 LAMP VPS

استخدام نظام مختلف؟ Directus 6.4 CMS هو نظام إدارة محتوى بلا محتوى قوي ومرن ومفتوح المصدر ومفتوح المصدر يوفر للمطورين

كيفية تثبيت ProcessWire CMS 3.0 على FreeBSD 11 FAMP VPS

كيفية تثبيت ProcessWire CMS 3.0 على FreeBSD 11 FAMP VPS

استخدام نظام مختلف؟ ProcessWire CMS 3.0 هو نظام إدارة محتوى بسيط ومرن وقوي ومجاني ومفتوح المصدر (CMS). ProcessWire CMS 3.

قم بإعداد خادم Keystone.js باستخدام وكيل Nginx Reverse على Ubuntu 16.04

قم بإعداد خادم Keystone.js باستخدام وكيل Nginx Reverse على Ubuntu 16.04

في هذا البرنامج التعليمي ، سنقوم بإعداد خادم ويب باستخدام وكيل عكسي. نظام إدارة المحتوى الذي سنستخدمه هو Keystone.js ، وهو إطار تطبيق ويب معروف

كيفية تثبيت dotCMS على CentOS 7

كيفية تثبيت dotCMS على CentOS 7

استخدام نظام مختلف؟ dotCMS هو نظام إدارة محتوى من فئة مفتوحة المصدر مفتوح بلغة جافا. أنه يحتوي تقريبا على كل ميزة مطلوبة ر

كيفية تثبيت Automad CMS على CentOS 7

كيفية تثبيت Automad CMS على CentOS 7

استخدام نظام مختلف؟ Automad هو نظام إدارة محتوى مفتوح المصدر (CMS) ومحرك قوالب مكتوب بلغة PHP. كود مصدر أوتوماد i

كيفية تثبيت PyroCMS على FreeBSD 11

كيفية تثبيت PyroCMS على FreeBSD 11

استخدام نظام مختلف؟ PyroCMS هو CMS مفتوح المصدر مكتوب بلغة PHP. يتم استضافة شفرة مصدر PyroCMS على GitHub. في هذا الدليل ، تمشي جيدًا عبر الكل

كيفية تثبيت ProcessWire CMS 3.0 على CentOS 7 LAMP VPS

كيفية تثبيت ProcessWire CMS 3.0 على CentOS 7 LAMP VPS

استخدام نظام مختلف؟ ProcessWire CMS 3.0 هو نظام إدارة محتوى بسيط ومرن وقوي ومجاني ومفتوح المصدر (CMS). ProcessWire CMS 3.

قم بتثبيت Tiki Wiki CMS Groupware على Ubuntu 18.04 LTS

قم بتثبيت Tiki Wiki CMS Groupware على Ubuntu 18.04 LTS

استخدام نظام مختلف؟ مقدمة Tiki Wiki CMS Groupware ، والمعروف أيضًا باسم Tiki ، هو نظام إدارة محتوى ويكي مجاني ومفتوح المصدر. ميزة Tikis

كيفية تثبيت BoltWire على أوبونتو 18.04

كيفية تثبيت BoltWire على أوبونتو 18.04

استخدام نظام مختلف؟ مقدمة BoltWire هو نظام إدارة محتوى مجاني وخفيف الوزن مكتوب بلغة PHP. مقارنة بمعظم إدارة المحتوى الأخرى

كيفية تثبيت Omeka Classic 2.4 CMS على CentOS 7 LAMP VPS

كيفية تثبيت Omeka Classic 2.4 CMS على CentOS 7 LAMP VPS

استخدام نظام مختلف؟ Omeka Classic 2.4 CMS هو نظام نشر رقمي مجاني ومفتوح المصدر ونظام إدارة المحتوى (CMS) لمشاركة الصور الرقمية

كيفية تثبيت PyroCMS على Fedora 28

كيفية تثبيت PyroCMS على Fedora 28

استخدام نظام مختلف؟ PyroCMS هو CMS مفتوح المصدر مكتوب بلغة PHP. يتم استضافة شفرة مصدر PyroCMS على GitHub. في هذا الدليل تمشي جيدًا عبر الكل

كيفية تثبيت PyroCMS على دبيان 9

كيفية تثبيت PyroCMS على دبيان 9

استخدام نظام مختلف؟ PyroCMS هو CMS مفتوح المصدر مكتوب بلغة PHP. يتم استضافة شفرة مصدر PyroCMS على GitHub. في هذا الدليل تمشي جيدًا عبر الكل

كيفية تثبيت ProcessWire CMS 3.0 على Debian 9 LAMP VPS

كيفية تثبيت ProcessWire CMS 3.0 على Debian 9 LAMP VPS

استخدام نظام مختلف؟ ProcessWire CMS 3.0 هو نظام إدارة محتوى بسيط ومرن وقوي ومجاني ومفتوح المصدر (CMS). ProcessWire CMS 3.

كيفية تثبيت Microweber على CentOS 7

كيفية تثبيت Microweber على CentOS 7

استخدام نظام مختلف؟ Microweber هو سحب مفتوح المصدر وإفلات CMS ومتجر عبر الإنترنت. يتم استضافة شفرة مصدر Microweber على GitHub. هذا الدليل سيظهر لك

تثبيت Microweber على أوبونتو 16.04

تثبيت Microweber على أوبونتو 16.04

استخدام نظام مختلف؟ Microweber هو سحب مفتوح المصدر وإفلات CMS ومتجر عبر الإنترنت. يتم استضافة شفرة مصدر Microweber على GitHub. هذا الدليل سيظهر لك

نظرة ثاقبة على 26 أسلوبًا لتحليل البيانات الضخمة: الجزء الأول

نظرة ثاقبة على 26 أسلوبًا لتحليل البيانات الضخمة: الجزء الأول

نظرة ثاقبة على 26 أسلوبًا لتحليل البيانات الضخمة: الجزء الأول

6 أشياء شديدة الجنون حول نينتندو سويتش

6 أشياء شديدة الجنون حول نينتندو سويتش

يعرف الكثير منكم أن Switch سيصدر في مارس 2017 وميزاته الجديدة. بالنسبة لأولئك الذين لا يعرفون ، قمنا بإعداد قائمة بالميزات التي تجعل "التبديل" "أداة لا غنى عنها".

وعود التكنولوجيا التي لم يتم الوفاء بها بعد

وعود التكنولوجيا التي لم يتم الوفاء بها بعد

هل تنتظر عمالقة التكنولوجيا للوفاء بوعودهم؟ تحقق من ما تبقى دون تسليم.

وظائف طبقات معمارية مرجعية للبيانات الضخمة

وظائف طبقات معمارية مرجعية للبيانات الضخمة

اقرأ المدونة لمعرفة الطبقات المختلفة في بنية البيانات الضخمة ووظائفها بأبسط طريقة.

كيف يمكن للذكاء الاصطناعي نقل أتمتة العمليات إلى المستوى التالي؟

كيف يمكن للذكاء الاصطناعي نقل أتمتة العمليات إلى المستوى التالي؟

اقرأ هذا لمعرفة مدى انتشار الذكاء الاصطناعي بين الشركات الصغيرة وكيف أنه يزيد من احتمالات نموها ومنح منافسيها القدرة على التفوق.

CAPTCHA: ما هي المدة التي يمكن أن تظل تقنية قابلة للتطبيق للتميز بين الإنسان والذكاء الاصطناعي؟

CAPTCHA: ما هي المدة التي يمكن أن تظل تقنية قابلة للتطبيق للتميز بين الإنسان والذكاء الاصطناعي؟

لقد أصبح حل CAPTCHA صعبًا جدًا على المستخدمين في السنوات القليلة الماضية. هل ستكون قادرة على أن تظل فعالة في اكتشاف البريد العشوائي والروبوتات في المستقبل القريب؟

التفرد التكنولوجي: مستقبل بعيد للحضارة الإنسانية؟

التفرد التكنولوجي: مستقبل بعيد للحضارة الإنسانية؟

مع تطور العلم بمعدل سريع ، واستلام الكثير من جهودنا ، تزداد أيضًا مخاطر تعريض أنفسنا إلى تفرد غير قابل للتفسير. اقرأ ، ماذا يمكن أن يعني التفرد بالنسبة لنا.

التطبيب عن بعد والرعاية الصحية عن بعد: المستقبل هنا

التطبيب عن بعد والرعاية الصحية عن بعد: المستقبل هنا

ما هو التطبيب عن بعد والرعاية الصحية عن بعد وأثره على الأجيال القادمة؟ هل هو مكان جيد أم لا في حالة الوباء؟ اقرأ المدونة لتجد طريقة عرض!

هل تساءلت يومًا كيف يربح المتسللون الأموال؟

هل تساءلت يومًا كيف يربح المتسللون الأموال؟

ربما سمعت أن المتسللين يكسبون الكثير من المال ، لكن هل تساءلت يومًا كيف يجنون هذا النوع من المال؟ دعنا نناقش.

يتسبب التحديث الإضافي لنظام macOS Catalina 10.15.4 في حدوث مشكلات أكثر من حلها

يتسبب التحديث الإضافي لنظام macOS Catalina 10.15.4 في حدوث مشكلات أكثر من حلها

أصدرت Apple مؤخرًا macOS Catalina 10.15.4 تحديثًا تكميليًا لإصلاح المشكلات ولكن يبدو أن التحديث يتسبب في المزيد من المشكلات التي تؤدي إلى إنشاء أجهزة macOS. قراءة هذه المادة لمعرفة المزيد