تثبيت Fork CMS على Fedora 28

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

المتطلبات

  • PHP 7.1 أو أعلى.
  • MySQL 5.0 أو أعلى.
  • إنجن إكس أو أباتشي 2.0 مع .htaccess، mod rewrite، mod expires(اختياري ولكن يوصى به) و mod deflate(اختياري) تمكين.

قبل ان تبدأ

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

cat /etc/fedora-release
# Fedora release 28 (Twenty Eight)

قم بإنشاء حساب مستخدم جديد غير جذري له sudoحق الوصول وقم بالتبديل إليه. استبدل johndoeباسم المستخدم الخاص بك.

useradd -c "John Doe" johndoe && passwd johndoe
usermod -aG wheel johndoe
su - johndoe

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

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

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

sudo dnf check-upgrade || sudo dnf upgrade -y

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

sudo dnf install -y wget vim unzip bash-completion

من أجل البساطة ، قم بتعطيل SELinux وجدار الحماية.

sudo setenforce 0
sudo systemctl stop firewalld
sudo systemctl disable firewalld

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

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

sudo dnf install -y php-cli php-fpm php-common php-mbstring php-gd php-intl php-mysqlnd php-xml php-json

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

php --version
# PHP 7.2.6 (cli) (built: May 22 2018 16:22:08) ( NTS )
# Copyright (c) 1997-2018 The PHP Group
# Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies

قم بتثبيت Nginx.

sudo dnf install -y nginx

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

nginx -v
# nginx version: nginx/1.12.1

ابدأ وتمكين Nginx.

sudo systemctl enable nginx.service
sudo systemctl start nginx.service

قم بتثبيت MariaDB.

sudo dnf install -y mariadb-server

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

mysql --version
# mysql  Ver 15.1 Distrib 10.2.15-MariaDB, for Linux (x86_64) using readline 5.1

ابدأ وتمكين MariaDB.

sudo systemctl enable mariadb.service
sudo systemctl start mariadb.service

قم بتشغيل mysql_secure_installationالبرنامج النصي لتحسين أمان تثبيت MariaDB.

sudo mysql_secure_installation

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

mysql -u root -p
# Enter password:

إنشاء قاعدة بيانات ومستخدم MariaDB جديد ، وتذكر أوراق الاعتماد.

create database dbname;
grant all on dbname.* to 'username' identified by 'password';

اخرج MySQL.

exit

الخطوة 2 - تكوين Nginx

قم بتشغيله sudo vi /etc/nginx/conf.d/fork.confوملؤه بما يلي.

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:/run/php-fpm/www.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تعيينها بشكل صحيح.

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

sudo nginx -t

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

sudo systemctl reload nginx.service

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

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

sudo dnf 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

الخطوة 4 - تنزيل وتثبيت 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الدليل إلى nginx.

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

تشغيل sudo vim /etc/php-fpm.d/www.confوتعيين المستخدم والمجموعة إلى nginx.

sudo vim /etc/php-fpm.d/www.conf
# user = nginx
# group = nginx

أعد تشغيل php-fpm.service.

sudo systemctl restart php-fpm.service

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

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

إنشاء /var/lib/php/sessionدليل وتغيير ملكيته إلى المستخدم nginx.

sudo mkdir -p /var/lib/php/session
sudo chown -R nginx:nginx /var/lib/php/session

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



Leave a Comment

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