كيفية نشر Ghost v0.11 LTS على Ubuntu 16.04

Ghost هي منصة تدوين مفتوحة المصدر تكتسب شعبية بين المطورين والمستخدمين العاديين منذ إصدارها عام 2013. يركز على المحتوى والتدوين. الشيء الأكثر جاذبية في Ghost هو تصميمه البسيط والنظيف وسريع الاستجابة. يمكنك كتابة منشورات مدونتك من هاتف محمول. تتم كتابة محتوى Ghost باستخدام لغة التخفيض. Ghost مناسب تمامًا للأفراد أو مجموعات صغيرة من الكتاب.

في هذا الدليل سنقوم بإعداد ونشر مدونة Ghost v0.11.x LTS آمنة على Ubuntu 16.04 LTS VPS باستخدام Let's Encrypt و Certbot و Node.js و NPM و NGINX و MySQL .

المتطلبات

  • تسجيل (شراء) اسم المجال.
  • خادم Ubuntu 16.04 مثيل خادم بحد أدنى 1 غيغابايت من ذاكرة الوصول العشوائي .
  • مستخدم سودو.

قبل ان تبدأ

  1. إنشاء حساب مستخدم جديد غير جذري :

    adduser johndoe --gecos "John Doe"
    
  2. اجعله مستخدمًا فائقًا عن طريق إضافته إلى sudoالمجموعة:

    usermod -aG sudo johndoe
    
  3. التبديل إلى مستخدم جديد:

    su - johndoe
    
  4. تحديث برنامج نظام التشغيل الخاص بك:

    sudo apt update && sudo apt upgrade -y
    
  5. إعداد المنطقة الزمنية:

    sudo dpkg-reconfigure tzdata
    
  6. تثبيت الأدوات المطلوبة:

    sudo apt install -y build-essential zip unzip vim nano openssl wget curl git apt-transport-https
    
  7. إعادة تشغيل النظام إذا لزم الأمر:

    sudo shutdown -r now
    

قم بتثبيت Certbot

ملاحظة : قبل البدء في هذه الخطوة ، تأكد من تعيين سجلات DNS لنطاقك.

سنستخدم برنامج Let's Encrypt CA و EFF Certbit للحصول على شهادة SSL / TLS لمدونة Ghost الخاصة بنا. لا تنس استبدال جميع مثيلات blog.domain.tldاسم المجال الخاص بك.

  1. قم بتثبيت برنامج إدارة الشهادات Certbot (المعروف سابقًا باسم Let's Encrypt Client ) المصنوع من Python:

    sudo apt update
    sudo apt install -y software-properties-common
    sudo add-apt-repository -y ppa:certbot/certbot
    sudo apt update
    sudo apt install -y certbot
    
  2. تحقق من إصدار Certbot:

    certbot --version
    # certbot 0.14.2
    
  3. الحصول على شهادة RSA باستخدام طريقة المصادقة المستقلة (البرنامج المساعد):

    sudo certbot certonly --standalone --domains blog.domain.tld --rsa-key-size 2048 --must-staple --email [email protected] --no-eff-email --agree-tos
    
    # IMPORTANT NOTES:
    #  - Congratulations! Your certificate and chain have been saved at 
       /etc/letsencrypt/live/blog.domain.tld/fullchain.pem. 
    #  Your cert will expire on YYYY-MM-DD. . . .
    #  . . .
    

    بعد أن يمر الخطوات السابقة، يا شهادة و مفتاح خاص سيكون في /etc/letsencrypt/live/blog.domain.tldالدليل.

قم بتثبيت Node.js و NPM

ملاحظة : يدعم Ghost حاليًا إصدارات Node.js 4.5+ و 6.9+ فقط.

شبح مبني على Node.js. سنقوم بتثبيت الإصدار الموصى به لـ Ghost وهو v6 Boron LTSوقت كتابة هذه السطور.

  1. تنزيل وتثبيت Node.js v6 LTS:

    curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash -
    sudo apt install -y nodejs
    
  2. تحقق من إصدار Node.js و NPM:

    node -v && npm -v
    # v6.11.1
    # 3.10.10
    

تثبيت MySQL

بشكل افتراضي ، يأتي Ghost مضبوطًا لاستخدام قاعدة بيانات SQLite ، والتي لا تتطلب أي تكوين.

بدلاً من ذلك ، يمكن استخدام Ghost أيضًا مع قاعدة بيانات MySQL عن طريق تغيير تكوين قاعدة البيانات. يجب عليك إنشاء قاعدة بيانات ومستخدم أولاً ، يمكنك بعد ذلك تغيير تكوين sqlite3 الحالي.

  1. تنزيل وتثبيت MySQL:

    sudo apt install -y mysql-server
    

    ملاحظة : أثناء التثبيت ، ستتم مطالبتك بكلمة مرور مستخدم MySQL "الجذر". يجب عليك تعيين كلمة مرور آمنة لمستخدم MySQL "الجذر".

  2. تحقق من نسخة MySQL:

    mysql --version
    # mysql  Ver 14.14 Distrib 5.7.18, for Linux (x86_64) using  EditLine wrapper
    
  3. تحقق مما إذا كان برنامج MySQL daemon قد بدأ ويعمل:

    sudo systemctl status mysql.service
    sudo systemctl is-enabled mysql.service
    
  4. قم بتشغيل mysql_secure_installationالبرنامج النصي لتأمين قاعدة البيانات الخاصة بك قليلا:

    sudo mysql_secure_installation
    
  5. قم بتسجيل الدخول إلى MySQL كمستخدم أساسي:

    mysql -u root -p
    # Enter password:
    
  6. إنشاء قاعدة بيانات MySQL جديدة ومستخدم:

    create database dbname;
    grant all on dbname.* to 'user' identified by 'password';
    
  7. الخروج من MySQL:

    exit
    

قم بتثبيت NGINX

  1. قم بتنزيل وتثبيت أحدث إصدار رئيسي من NGINX من مستودع NGINX الرسمي:

    wget https://nginx.org/keys/nginx_signing.key
    sudo apt-key add nginx_signing.key
    rm nginx_signing.key
    sudo -s
    printf "deb https://nginx.org/packages/mainline/ubuntu/ `lsb_release -sc` nginx \ndeb-src https://nginx.org/packages/mainline/ubuntu/ `lsb_release -sc` nginx \n" >> /etc/apt/sources.list.d/nginx_mainline.list
    exit
    sudo apt update
    sudo apt install -y nginx nginx-module-geoip nginx-module-image-filter nginx-module-njs nginx-module-perl nginx-module-xslt nginx-nr-agent
    
  2. تحقق من تثبيته عن طريق التحقق من إصدار NGINX:

    sudo nginx -v
    # nginx version: nginx/1.13.3
    
  3. التحقق من الحالة وتمكين وبدء خدمة NGINX (البرنامج الخفي):

    sudo systemctl status nginx.service # inactive (dead)
    sudo systemctl enable nginx.service
    sudo systemctl start nginx.service
    
  4. إنشاء /etc/nginx/sslدليل وإنشاء مجموعة Diffie-Hellman ( DH ) جديدة:

    sudo mkdir -p /etc/nginx/ssl
    sudo openssl dhparam -out /etc/nginx/ssl/dhparams-2048.pem 2048
    
  5. إنشاء دليل سجل blog.domain.tldللمضيف الظاهري:

    sudo mkdir -p /var/log/nginx/blog.domain.tld
    
  6. تكوين NGINX كخادم وكيل عكسي HTTP ( S ):

    sudo vim /etc/nginx/conf.d/ghost.conf
    
  7. قم بلصق التالي في /etc/nginx/conf.d/ghost.conf:

    # domain: blog.domain.tld
    # public: /var/www/ghost
    
    upstream ghost_app {
        server 127.0.0.1:2368;
        keepalive 32;
    }
    
    server {
        listen [::]:80 default_server;
        listen 80 default_server;
        listen [::]:443 ssl http2 default_server;
        listen 443 ssl http2 default_server;
    
        server_name blog.domain.tld;
        root /var/www/ghost;
    
        error_log /var/log/nginx/blog.domain.tld/error.log;
        access_log /var/log/nginx/blog.domain.tld/access.log;
    
        client_max_body_size 100M;
    
        ssl_certificate /etc/letsencrypt/live/blog.domain.tld/fullchain.pem;
        ssl_certificate_key /etc/letsencrypt/live/blog.domain.tld/privkey.pem;
        ssl_dhparam ssl/dhparams-2048.pem;
    
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3;
        ssl_ciphers 'ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:ECDHE-ECDSA-DES-CBC3-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA:!DSS';
        ssl_prefer_server_ciphers on;
    
        ssl_buffer_size 4K;
    
        ssl_session_timeout 1d;
        ssl_session_cache shared:SSL:50M;
        ssl_session_tickets off;
    
        ssl_stapling on;
        ssl_stapling_verify on;
        ssl_trusted_certificate /etc/letsencrypt/live/blog.domain.tld/chain.pem;
    
        resolver 8.8.8.8 8.8.4.4 valid=300s;
    
        location / {
            proxy_pass http://ghost_app;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header Host $http_host;
            proxy_set_header X-Forwarded-Proto $scheme;
            proxy_hide_header X-Powered-By;
    
            proxy_http_version 1.1;
            proxy_set_header Connection "";
    
        }
    }
    
  8. حفظ واختبار تكوين NGINX بحثًا عن أخطاء في البنية:

    sudo nginx -t
    
  9. إعادة تحميل تهيئة NGINX:

    sudo systemctl reload nginx.service
    

قم بتثبيت Ghost

ملاحظة : إذا كنت ترغب في استضافة العديد من مدونات Ghost على نفس VPS ، فيجب تشغيل كل مثيل Ghost على منفذ منفصل.

  1. إنشاء دليل جذر المستند:

    sudo mkdir -p /var/www/
    
  2. إنشاء ghostمستخدم جديد :

    sudo adduser --shell /bin/bash --gecos 'Ghost application' --disabled-password ghost
    
  3. تنزيل Ghost:

    curl -L https://github.com/TryGhost/Ghost/releases/download/0.11.10/Ghost-0.11.10.zip -o ghost.zip
    
  4. فك ضغط Ghost في /var/www/ghostالدليل (موقع التثبيت الموصى به):

    sudo unzip -uo ghost.zip -d /var/www/ghost
    rm ghost.zip
    
  5. الانتقال إلى ghostالدليل الجديد :

    cd /var/www/ghost
    
  6. تغيير ملكية /var/www/ghostالدليل:

    sudo chown -R ghost:ghost .
    
  7. التبديل إلى ghostمستخدم جديد :

    sudo su - ghost
    
  8. انتقل إلى جذر المستند /var/www/ghost:

    cd /var/www/ghost
    
  9. قم بتثبيت Ghost مع تبعيات الإنتاج فقط. عند اكتمال ذلك ، يتم تثبيت Ghost:

    npm install --production
    
  10. شبح تكوين عن طريق تغيير url، mailو databaseممتلكات productionداخل كائن من config.jsملف:

    cp config.example.js config.js
    vim /var/www/ghost/config.js
    
    
    var path = require('path'),
        config;
    
    config = {
        // ### Production
        // When running Ghost in the wild, use the production environment.
        // Configure your URL and mail settings here
        production: {
            url: 'https://blog.domain.tld',
            mail: {
                transport: 'SMTP',
                options: {
                    service: 'Mailgun',
                    auth: {
                        user: '',
                        pass: ''
                    }
                }
            },
            database: {
                client: 'mysql',
                connection: {
                    host: '127.0.0.1',
                    user: 'your_database_user',
                    password: 'your_database_password',
                    database: 'your_database_name',
                    charset: 'utf8'
                },
                debug: false
            },
            // . . .
            // . . .
    

    ملاحظة : يجب عليك تكوين mailالإعدادات أيضًا. راجع وثائق Ghost الرسمية حول كيفية القيام بذلك.

  11. ابدأ Ghost في بيئة الإنتاج:

    npm start --production
    

    سيتم تشغيل Ghost الآن. يتم تأمين الواجهة الأمامية للمدونة وواجهة المشرف باستخدام HTTPS ويعمل HTTP / 2 أيضًا. يمكنك فتح متصفحك وزيارة الموقع على https://blog.domain.tld. لا تنس أن تستبدل blog.domain.tldاسم المجال الخاص بك.

  12. قم بإيقاف تشغيل عملية Ghost بالضغط على CTRL+ Cوالخروج من مستخدم ghost إلى المستخدم الجذر:

    exit
    

تشغيل Ghost كخدمة نظام

إذا أغلقت جلسة عمل المحطة الطرفية باستخدام VPS ، فسوف تنخفض مدونتك أيضًا. هذا ليس جيدا. لتجنب هذا ، سنستخدم systemd. ستبقي مدونتنا حتى 24/7.

  1. إنشاء ghost.serviceملف وحدة systemd. تشغيل sudo vim /etc/systemd/system/ghost.serviceونسخ / لصق المحتوى أدناه:

    [Unit]
    Description=Ghost - the professional publishing platform
    Documentation=https://docs.ghost.org/v0.11.9
    After=network.target
    
    [Service]
    Type=simple
    # Edit WorkingDirectory, User and Group as needed
    WorkingDirectory=/var/www/ghost
    User=ghost
    Group=ghost
    ExecStart=/usr/bin/npm start --production
    ExecStop=/usr/bin/npm stop --production
    Restart=always
    SyslogIdentifier=Ghost
    
    [Install]
    WantedBy=multi-user.target
    
  2. تمكين وبدء ghost.service:

    sudo systemctl enable ghost.service && sudo systemctl start ghost.service
    
  3. التحقق من ghost.serviceالحالة:

    sudo systemctl status ghost.service && sudo systemctl is-enabled ghost.service
    
  4. انتقل إلى https://blog.domain.tld/ghost/مستخدم مسؤول Ghost وأنشئه. نفذ ذلك في أسرع ما يمكن!

استنتاج

هذا هو. لدينا الآن مدونة Ghost تعمل بكامل طاقتها. يقوم الخادم الخاص بك بتوصيل المحتوى عبر HTTP / 2 عندما يدعمه العميل. إذا كنت ترغب في تغيير سمة Ghost الافتراضية المسماة Casper إلى سمة مخصصة ، فيمكنك فقط تنزيل السمة وفك ضغطها في /var/www/ghost/content/themesالمجلد وتحديدها عبر واجهة إدارة Ghost ، الموجودة في https://blog.domain.tld/ghost.



Leave a Comment

كيفية نشر Ghost v0.11 LTS على Fedora 25

كيفية نشر Ghost v0.11 LTS على Fedora 25

استخدام نظام مختلف؟ Ghost هي منصة تدوين مفتوحة المصدر اكتسبت شعبية بين المطورين والمستخدمين العاديين منذ عام 201

قم بتثبيت WordPress على OpenBSD 6.2

قم بتثبيت WordPress على OpenBSD 6.2

مقدمة WordPress هو نظام إدارة المحتوى المهيمن على الإنترنت. يعمل على تشغيل كل شيء من المدونات إلى مواقع الويب المعقدة ذات المحتوى الديناميكي

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

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

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

كيفية نشر مواقع Wordpress متعددة باستخدام Virtualmin و Ansible على Ubuntu 16.04

كيفية نشر مواقع Wordpress متعددة باستخدام Virtualmin و Ansible على Ubuntu 16.04

الاستخدام الشائع لخادم Vultr الظاهري هو استضافة مواقع Wordpress. يوضح لك هذا الدليل كيفية أتمتة تكوين خادم افتراضي من scratc

قم بتثبيت وتكوين مدونة Ghost v1.0.0 على Ubuntu 16.04

قم بتثبيت وتكوين مدونة Ghost v1.0.0 على Ubuntu 16.04

Ghost عبارة عن منصة نشر حديثة مفتوحة المصدر مبنية على Node.js مع عميل مشرف Ember.js وواجهة برمجة تطبيقات JSON وواجهة برمجة تطبيقات للسمات مدعومة من Handlebars.js. غص

إعداد WordPress مع WooCommerce على CentOS 6

إعداد WordPress مع WooCommerce على CentOS 6

تعد مثيلات Vultr طريقة رائعة لتشغيل مدونة WordPress الخاصة بك ، ولكن امتدادًا بارزًا لـ WordPress هو WooCommerce ، وهو مكون إضافي للتجارة الإلكترونية يمتد

تثبيت Fork CMS على CentOS 7

تثبيت Fork CMS على CentOS 7

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

كيفية تثبيت ثورة MODX على Ubuntu 16.04 LAMP VPS

كيفية تثبيت ثورة MODX على Ubuntu 16.04 LAMP VPS

استخدام نظام مختلف؟ MODX Revolution عبارة عن نظام إدارة محتوى (CMS) سريع ومرن وقابل للتوسيع ومجاني ومفتوح المصدر ومكتوب

كيفية تثبيت MODX Revolution على FreeBSD 11 FAMP VPS

كيفية تثبيت MODX Revolution على FreeBSD 11 FAMP VPS

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

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

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

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

كيفية تثبيت ثورة MODX على Debian 9 LAMP VPS

كيفية تثبيت ثورة MODX على Debian 9 LAMP VPS

استخدام نظام مختلف؟ MODX Revolution عبارة عن نظام إدارة محتوى (CMS) سريع ومرن وقابل للتوسيع ومجاني ومفتوح المصدر ومكتوب

كيفية نشر Ghost على أوبونتو 16.04

كيفية نشر Ghost على أوبونتو 16.04

استخدام نظام مختلف؟ Ghost هي منصة تدوين مفتوحة المصدر تكتسب شعبية بين المطورين والمستخدمين العاديين منذ إصدارها عام 2013. أنا

كيفية نشر Ghost على دبيان 8.7

كيفية نشر Ghost على دبيان 8.7

استخدام نظام مختلف؟ Ghost هي منصة تدوين مفتوحة المصدر تكتسب شعبية بين المطورين والمستخدمين العاديين منذ إصدارها عام 2013. أنا

كيفية تثبيت Dotclear على دبيان 9 (امتداد)

كيفية تثبيت Dotclear على دبيان 9 (امتداد)

استخدام نظام مختلف؟ Dotclear هو محرك تدوين بسيط للغاية. إنه مفتوح المصدر وسهل الاستخدام. سيذهب هذا البرنامج التعليمي خلال التثبيت

كيفية تثبيت MODX Revolution على Fedora 26 LAMP VPS

كيفية تثبيت MODX Revolution على Fedora 26 LAMP VPS

استخدام نظام مختلف؟ MODX Revolution عبارة عن نظام إدارة محتوى (CMS) سريع ومرن وقابل للتوسيع ومجاني ومفتوح المصدر ومكتوب

إعداد منصة Ghost Professional للنشر على OpenBSD 6

إعداد منصة Ghost Professional للنشر على OpenBSD 6

Ghost هو أحدث وأكبر مبتدئ لمنافس وورد. تطوير السمة سريع وسهل التعلم لأن مطوري Ghost قرروا استخدام كل من th

إنشاء مدونة Jekyll على CentOS 7

إنشاء مدونة Jekyll على CentOS 7

استخدام نظام مختلف؟ Jekyll هو بديل جيد لـ WordPress. لا يتطلب أي قواعد بيانات ويعمل مع لغة كثير من الذكاء مألوفة

تشغيل WordPress على OpenBSD 6.5 مع OpenBSDs HTTPD

تشغيل WordPress على OpenBSD 6.5 مع OpenBSDs HTTPD

مقدمة كلما اقتربت من تثبيت OpenBSD بشكل افتراضي وبدون العديد من الحزم المضافة ، كلما كانت أكثر أمانًا. في حين أن المزيد كومو

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

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

Neos هو نظام مبتكر لإدارة المحتوى مفتوح المصدر وهو رائع لإنشاء وتحرير المحتوى عبر الإنترنت. مع وضع المؤلفين والمحررين في الاعتبار ، Neo

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