تثبيت Fork CMS على دبيان 9

Fork هو CMS مفتوح المصدر مكتوب بلغة PHP. يتم استضافة رمز مصدر Fork على GitHub . سيوضح لك هذا الدليل كيفية تثبيت Fork CMS على نسخة جديدة من Debian 9 Vultr.

المتطلبات

  • PHP 7.1 أو أعلى.
  • ملحقات PHP التالية:
    • cURL
    • libxml
    • DOM
    • SimpleXML
    • SPL
    • PDO (مع برنامج تشغيل MySQL)
    • mb_string
    • iconv
    • GD2 مكتبة الرسومات
    • json
    • PCRE
    • intl
  • MySQL 5.0 أو أعلى.
  • Nginx

تحقق من إصدار دبيان.

lsb_release -ds
# Debian GNU/Linux 9.4 (stretch)

تأكد من أن نظامك محدث.

apt update && apt upgrade -y

قم بتثبيت الحزم المطلوبة.

apt install -y apt-transport-https sudo curl wget dirmngr

قم بإنشاء non-rootحساب مستخدم جديد له sudoحق الوصول والتبديل إليه.

adduser johndoe --gecos "John Doe"
usermod -aG sudo johndoe
su - johndoe

ملاحظة : استبدل johndoeباسم المستخدم الخاص بك .

قم بإعداد المنطقة الزمنية.

timedatectl list-timezones
sudo timedatectl set-timezone Region/City

الخطوة 1 - تثبيت PHP وملحقات PHP المطلوبة ، MySQL و Nginx

لا يقدم دبيان أحدث إصدار PHP في مستودعات برمجياته الافتراضية. سنحتاج إلى إضافة مستودع تابع لجهة خارجية يتم الحفاظ عليه.

sudo wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/php.list
sudo apt update

قم بتثبيت PHP 7.2 وملحقات PHP المطلوبة.

sudo apt install -y php7.2 php7.2-cli php7.2-fpm php7.2-common php7.2-curl php7.2-mbstring php7.2-gd php7.2-intl php7.2-mysql php7.2-xml php7.2-json

التحقق من إصدار.

php --version

PHP 7.2.5-1+0~20180505045740.21+stretch~1.gbpca2fa6 (cli) (built: May  5 2018 04:57:44) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
    with Zend OPcache v7.2.5-1+0~20180505045740.21+stretch~1.gbpca2fa6, Copyright (c) 1999-2018, by Zend Technologies

الخطوة 2 - تثبيت MySQL / MariaDB وإعداد قاعدة بيانات

قم بتثبيت MySQL / MariaDB.

sudo apt install -y mysql-server

تحقق من إصدار MySQL / MariaDB.

mysql --version
# mysql  Ver 15.1 Distrib 10.1.26-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2

قم بتشغيل mysql_secure installationالبرنامج النصي لتحسين أمان MySQL وتعيين كلمة المرور rootلمستخدم MySQL .

sudo mysql_secure_installation

الاتصال بشبكة MySQL كمستخدم الجذر.

sudo mysql -u root -p
# Enter password

إنشاء قاعدة بيانات MySQL فارغة ومستخدم لنظام Fork CMS ، وتذكر أوراق الاعتماد.

CREATE DATABASE dbname;
CREATE USER 'username'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON dbname.* TO username@localhost;
FLUSH PRIVILEGES;
EXIT;

الخطوة 3 - تثبيت وتكوين Nginx

قم بتثبيت Nginx.

sudo apt install -y nginx

التحقق من إصدار.

sudo nginx -v
# nginx version: nginx/1.10.3

قم بتشغيل sudo vim /etc/nginx/sites-available/fork.confوتكوين Nginx لـ Fork.

server {
    listen 80;

    root /var/www/fork;
    index index.php index.html;

    server_name example.com;

    location / {
    # Checks whether the requested url exists as a file $uri or directory $uri/ in the root, else redirect to /index.php.
        try_files $uri $uri/ @redirects;
    }

    location @redirects {
        rewrite ^ /index.php;
    }

    location ~ \.php$ {
        try_files $uri =404;
        include fastcgi_params;
        fastcgi_pass unix:/var/run/php/php7.2-fpm.sock; # Make sure to doublecheck this!
        fastcgi_index index.php;
        fastcgi_read_timeout 60;
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    }

    # Don't pollute the logs with common requests
    location = /robots.txt  { access_log off; log_not_found off; }
    location = /favicon.ico { access_log off; log_not_found off; }

    # As Fork CMS has the app_root as doc_root, we need to restrict access to a few things for security purposes!
    location ~* ^/(composer\..*|vendor\/.*|Procfile$|\.git\/.*|src\/Console.*|.*\.gitignore|\.editorconfig|\.travis.yml|autoload\.php|bower\.json|phpunit\.xml\.dist|.*\.md|app\/logs\/.*|app\/config\/.*|src\/Frontend\/Cache\/CompiledTemplates.*|src\/Frontend\/Cache\/Locale\/.*\.php|src\/Frontend\/Cache\/Navigation\/.*\.php|src\/Frontend\/Cache\/Search\/.*|src\/Backend\/Cache\/CompiledTemplates\/.*|src\/Backend\/Cache\/Locale\/.*\.php)$ {
        deny all;
        access_log off;
        log_not_found off;
    }

    # Deny access to dot-files.
    location ~ /\. {
        deny all;
        access_log off;
        log_not_found off;
    }
}

فيما يلي ملخص بالتغييرات التي ستجريها.

  • قم بتغيير قيمة rootالتوجيه للإشارة إلى الموقع الصحيح لموقع الويب الخاص بك ، مثل /var/www/fork.
  • قم بتغيير قيمة server_nameالتوجيه للإشارة إلى اسم المجال أو عنوان IP الخاص بك.
  • تأكد من التحقق من fastcgi_passتعيينها بشكل صحيح.

احفظ الملف واخرج.

قم بتنشيط fork.confالتكوين الجديد عن طريق ربط الملف sites-enabledبالدليل.

sudo ln -s /etc/nginx/sites-available/fork.conf /etc/nginx/sites-enabled/

اختبار تكوين Nginx.

sudo nginx -t

إعادة تحميل Nginx.

sudo systemctl reload nginx.service

الخطوة 4 - تنزيل وتثبيت Composer

تنزيل تبعيات الملحن.

sudo apt install -y curl git unzip

قم بتنزيل وتثبيت Composer ، مدير التبعية لـ PHP.

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('SHA384', 'composer-setup.php') === '544e09ee996cdf60ece3804abc52599c22b1f40f4323403c44d44fdfdd586475ca9813a858088ffbc1f233e9b180f061') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"
sudo mv composer.phar /usr/local/bin/composer

التحقق من إصدار.

composer --version
# Composer version 1.6.5 2018-05-04 11:44:59

الخطوة 5 - تنزيل وتثبيت Fork CMS عبر Composer

قم بإنشاء دليل جذر المستند.

sudo mkdir -p /var/www/fork

تغيير ملكية /var/www/forkالدليل إلى johndoe.

sudo chown -R johndoe:johndoe /var/www/fork

قم بتنزيل أحدث إصد��ر ثابت من Fork CMS من سطر الأوامر.

cd /var/www/fork
composer create-project forkcms/forkcms .

تغيير ملكية /var/www/forkالدليل إلى www-data.

sudo chown -R www-data:www-data /var/www/fork

قم بتحرير app/config/parameters.yml.distالملف وتعيين معلومات قاعدة البيانات.

sudo vim /var/www/fork/app/config/parameters_install.yml

باستخدام متصفح الويب المفضل لديك ، افتح موقعك واتبع مثبت Fork CMS. بعد اتباع المثبت ، يجب أن يكون لديك شوكة وتشغيل. للوصول إلى منطقة مسؤول Fork ، قم فقط بإلحاق /privateعنوان URL الخاص بموقعك.

اترك تعليقاً

نظرة ثاقبة على 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. قراءة هذه المادة لمعرفة المزيد