Fedora 25 पर घोस्ट v0.11 LTS को कैसे नियुक्त करें
एक अलग प्रणाली का उपयोग? घोस्ट एक ओपन सोर्स ब्लॉगिंग प्लेटफॉर्म है जो अपने 201 के बाद से डेवलपर्स और आम उपयोगकर्ताओं के बीच लोकप्रियता हासिल कर रहा है
घोस्ट एक ओपन सोर्स ब्लॉगिंग प्लेटफॉर्म है जो 2013 की रिलीज़ के बाद से डेवलपर्स और आम उपयोगकर्ताओं के बीच लोकप्रियता हासिल कर रहा है। यह सामग्री और ब्लॉगिंग पर ध्यान केंद्रित करता है। घोस्ट के बारे में सबसे आकर्षक चीज इसकी सरल, साफ और उत्तरदायी डिजाइन है। आप अपने ब्लॉग पोस्ट मोबाइल फोन से लिख सकते हैं। सामग्री के लिए भूत मार्काडाउन भाषा का उपयोग करते हुए लिखा गया है। भूत व्यक्तियों या लेखकों के छोटे समूहों के लिए एकदम सही है।
इस गाइड में हम की स्थापना की और एक सुरक्षित तैनात करने के लिए जा रहे हैं v0.11.x LTS भूत एक उबंटू 16.04 LTS VPS पर ब्लॉग का उपयोग कर आइए एन्क्रिप्ट , Certbot , Node.js , NPM , nginx और MySQL ।
एक नया गैर-रूट उपयोगकर्ता खाता बनाएँ :
adduser johndoe --gecos "John Doe"
इसे sudo
समूह में जोड़कर सुपरयुजर बनाएं :
usermod -aG sudo johndoe
नए उपयोगकर्ता पर स्विच करें:
su - johndoe
अपने ऑपरेटिंग सिस्टम के सॉफ़्टवेयर को अपडेट करें:
sudo apt update && sudo apt upgrade -y
टाइमजोन सेट करें:
sudo dpkg-reconfigure tzdata
आवश्यक उपकरण स्थापित करें:
sudo apt install -y build-essential zip unzip vim nano openssl wget curl git apt-transport-https
आवश्यकता होने पर रिबूट प्रणाली:
sudo shutdown -r now
नोट : इस चरण को शुरू करने से पहले, सुनिश्चित करें कि आपने अपने डोमेन के लिए DNS रिकॉर्ड सेट किया है ।
हम अपने भूत ब्लॉग के लिए एसएसएल / टीएलएस प्रमाणपत्र प्राप्त करने के लिए सीए एनक्रिप्ट और ईएफएफ के सर्टिफिकेट क्लाइंट का उपयोग करने जा रहे हैं । अपने डोमेन नाम के साथ सभी उदाहरणों को बदलना न भूलें ।blog.domain.tld
प्रमाण पत्र स्थापित करें (पूर्व में ग्राहक को एन्क्रिप्ट करें ) प्रमाण पत्र प्रबंधन सॉफ्टवेयर पायथन के साथ बनाया गया था:
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
प्रमाण पत्र संस्करण की जाँच करें:
certbot --version
# certbot 0.14.2
स्टैंडअलोन प्रमाणीकरण विधि (प्लगइन) का उपयोग करके आरएसए प्रमाणपत्र प्राप्त करें :
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 संस्करणों का समर्थन करता है केवल 4.5+ और 6.9+ ।
भूत Node.js. पर बनाया गया है हम घोस्ट के लिए अनुशंसित संस्करण को स्थापित करने जा रहे हैं जो v6 Boron LTS
इस लेखन के समय है।
Node.js v6 LTS डाउनलोड और इंस्टॉल करें:
curl -sL https://deb.nodesource.com/setup_6.x | sudo -E bash -
sudo apt install -y nodejs
Node.js और NPM संस्करण जांचें:
node -v && npm -v
# v6.11.1
# 3.10.10
डिफ़ॉल्ट रूप से, घोस्ट एक SQLite डेटाबेस का उपयोग करने के लिए कॉन्फ़िगर किया गया है, जिसके लिए कोई कॉन्फ़िगरेशन की आवश्यकता नहीं है।
वैकल्पिक रूप से घोस्ट का उपयोग MySQL डेटाबेस के साथ डेटाबेस कॉन्फ़िगरेशन को बदलकर भी किया जा सकता है। आपको पहले एक डेटाबेस और उपयोगकर्ता बनाना होगा, फिर आप मौजूदा sqlite3 कॉन्फ़िगरेशन को बदल सकते हैं।
MySQL डाउनलोड और इंस्टॉल करें:
sudo apt install -y mysql-server
नोट : स्थापना के दौरान, आपको MySQL "रूट" उपयोगकर्ता पासवर्ड के लिए संकेत दिया जाएगा। आपको MySQL "रूट" उपयोगकर्ता के लिए एक सुरक्षित पासवर्ड सेट करना चाहिए।
MySQL संस्करण की जाँच करें:
mysql --version
# mysql Ver 14.14 Distrib 5.7.18, for Linux (x86_64) using EditLine wrapper
जांचें कि क्या MySQL डेमन शुरू हो गया है और चल रहा है:
sudo systemctl status mysql.service
sudo systemctl is-enabled mysql.service
mysql_secure_installation
अपने डेटाबेस को थोड़ा सुरक्षित करने के लिए स्क्रिप्ट चलाएँ :
sudo mysql_secure_installation
मूल उपयोगकर्ता के रूप में MySQL में लॉग इन करें:
mysql -u root -p
# Enter password:
एक नया MySQL डेटाबेस और उपयोगकर्ता बनाएँ:
create database dbname;
grant all on dbname.* to 'user' identified by 'password';
MySQL से बाहर निकलें:
exit
एनजीआईएनएक्स का नवीनतम मेनलाइन संस्करण एनजीआईएनएक्स रिपॉजिटरी से डाउनलोड और इंस्टॉल करें :
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
सत्यापित करें कि यह NGINX संस्करण की जाँच करके स्थापित किया गया है:
sudo nginx -v
# nginx version: nginx/1.13.3
स्थिति जांचें, NGINX सेवा (डेमॉन) शुरू और सक्षम करें:
sudo systemctl status nginx.service # inactive (dead)
sudo systemctl enable nginx.service
sudo systemctl start nginx.service
/etc/nginx/ssl
निर्देशिका बनाएं और एक नया डिफिए-हेलमैन ( डीएच ) समूह बनाएं :
sudo mkdir -p /etc/nginx/ssl
sudo openssl dhparam -out /etc/nginx/ssl/dhparams-2048.pem 2048
blog.domain.tld
वर्चुअल होस्ट के लिए लॉग डायरेक्टरी बनाएँ :
sudo mkdir -p /var/log/nginx/blog.domain.tld
NGINX को HTTP ( S ) रिवर्स प्रॉक्सी सर्वर के रूप में कॉन्फ़िगर करें:
sudo vim /etc/nginx/conf.d/ghost.conf
निम्नलिखित को चिपकाएँ /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 "";
}
}
सिंटैक्स त्रुटियों के लिए NGINX कॉन्फ़िगरेशन सहेजें और परीक्षण करें:
sudo nginx -t
एनजीओएनएक्स कॉन्फ़िगरेशन पुनः लोड करें:
sudo systemctl reload nginx.service
नोट : यदि आप एक ही VPS पर कई घोस्ट ब्लॉग होस्ट करना चाहते हैं, तो प्रत्येक घोस्ट इंस्टेंस को एक अलग पोर्ट पर चलना चाहिए।
दस्तावेज़ रूट निर्देशिका बनाएँ:
sudo mkdir -p /var/www/
एक नया ghost
उपयोगकर्ता बनाएँ :
sudo adduser --shell /bin/bash --gecos 'Ghost application' --disabled-password ghost
डाउनलोड भूत:
curl -L https://github.com/TryGhost/Ghost/releases/download/0.11.10/Ghost-0.11.10.zip -o ghost.zip
/var/www/ghost
निर्देशिका में भूत भूत (अनुशंसित स्थान स्थापित करें):
sudo unzip -uo ghost.zip -d /var/www/ghost
rm ghost.zip
नई ghost
निर्देशिका में जाएं :
cd /var/www/ghost
/var/www/ghost
निर्देशिका का स्वामित्व बदलें :
sudo chown -R ghost:ghost .
नए ghost
उपयोगकर्ता पर स्विच करें:
sudo su - ghost
दस्तावेज़ रूट पर नेविगेट करें /var/www/ghost
:
cd /var/www/ghost
केवल उत्पादन निर्भरता के साथ भूत स्थापित करें। जब यह पूरा हो जाता है, तो भूत स्थापित होता है:
npm install --production
बदलकर विन्यस्त भूत 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
},
// . . .
// . . .
नोट : आपको
उत्पादन वातावरण में भूत शुरू करें:
npm start --production
अब चलेगा भूत HTTPS और HTTP / 2 के साथ ब्लॉग फ्रंट-एंड और एडमिन इंटरफ़ेस दोनों सुरक्षित हैं। आप अपना ब्राउज़र खोल सकते हैं और साइट पर जा सकते हैं https://blog.domain.tld
। blog.domain.tld
अपने डोमेन नाम के साथ प्रतिस्थापित करना न भूलें ।
शट डाउन घोस्ट प्रोसेस CTRL
+ दबाकर C
और भूत यूजर से वापस रूट यूजर से बाहर निकलें:
exit
यदि आप अपने VPS के साथ अपना टर्मिनल सत्र बंद करते हैं, तो आपका ब्लॉग भी नीचे चला जाएगा। यह अच्छा नहीं है। इससे बचने के लिए, हम सिस्टमड का उपयोग करने जा रहे हैं। यह हमारे ब्लॉग को 24/7 रखेगा।
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
सक्षम करें और शुरू करें ghost.service
:
sudo systemctl enable ghost.service && sudo systemctl start ghost.service
ghost.service
स्थिति जांचें :
sudo systemctl status ghost.service && sudo systemctl is-enabled ghost.service
https://blog.domain.tld/ghost/
भूत व्यवस्थापक उपयोगकर्ता पर नेविगेट करें और बनाएं। जितनी जल्दी हो सके, यह करो!
बस। अब हमारे पास पूरी तरह कार्यात्मक भूत ब्लॉग है। क्लाइंट द्वारा समर्थित होने पर आपका सर्वर HTTP / 2 के माध्यम से सामग्री वितरित कर रहा है। यदि आप कैस्पर नामक डिफ़ॉल्ट घोस्ट थीम को कस्टम में बदलना चाहते हैं , तो आप बस थीम को /var/www/ghost/content/themes
फ़ोल्डर में डाउनलोड और अनज़िप कर सकते हैं और इसे घोस्ट एडमिन इंटरफ़ेस के माध्यम से चुन सकते हैं https://blog.domain.tld/ghost
।
एक अलग प्रणाली का उपयोग? घोस्ट एक ओपन सोर्स ब्लॉगिंग प्लेटफॉर्म है जो अपने 201 के बाद से डेवलपर्स और आम उपयोगकर्ताओं के बीच लोकप्रियता हासिल कर रहा है
परिचय वर्डप्रेस इंटरनेट पर प्रमुख सामग्री प्रबंधन प्रणाली है। यह ब्लॉग से लेकर डायनामिक कंटेंट वाली जटिल वेबसाइटों तक सब कुछ को अधिकार देता है
एक अलग प्रणाली का उपयोग? MODX क्रांति PHP में लिखा गया एक तेज़, लचीला, स्केलेबल, ओपन सोर्स, एंटरप्राइज-ग्रेड कंटेंट मैनेजमेंट सिस्टम (CMS) है। यह मैं
एक अलग प्रणाली का उपयोग? कांटा PHP में लिखा गया एक खुला स्रोत CMS है। Forks स्रोत कोड GitHub पर होस्ट किया गया है। यह मार्गदर्शिका आपको बताएगी कि कांटा CM कैसे स्थापित किया जाए
वल्चर वर्चुअल सर्वर का एक सामान्य उपयोग वर्डप्रेस वेबसाइटों की मेजबानी करना है। यह मार्गदर्शिका आपको दिखाती है कि स्क्रैच से वर्चुअल सर्वर के कॉन्फ़िगरेशन को कैसे स्वचालित किया जाए
वुल्ट्र इंस्टेंस आपके वर्डप्रेस ब्लॉग को चलाने का एक शानदार तरीका है, लेकिन वर्डप्रेस का अधिक उल्लेखनीय विस्तार WooCommerce है, जो ई-कॉमर्स प्लगइन है जो वें का विस्तार करता है
एक अलग प्रणाली का उपयोग? कांटा PHP में लिखा गया एक खुला स्रोत CMS है। Forks स्रोत कोड GitHub पर होस्ट किया गया है। यह मार्गदर्शिका आपको बताएगी कि कांटा CM कैसे स्थापित किया जाए
एक अलग प्रणाली का उपयोग? MODX क्रांति एक तेज, लचीला, स्केलेबल, मुक्त और खुला स्रोत है, एंटरप्राइज़-ग्रेड कंटेंट मैनेजमेंट सिस्टम (CMS) i लिखा है
एक अलग प्रणाली का उपयोग? घोस्ट एक ओपन सोर्स ब्लॉगिंग प्लेटफॉर्म है जो 2013 की रिलीज के बाद से डेवलपर्स और आम उपयोगकर्ताओं के बीच लोकप्रियता हासिल कर रहा है। मैं
एक अलग प्रणाली का उपयोग? घोस्ट एक ओपन सोर्स ब्लॉगिंग प्लेटफॉर्म है जो 2013 की रिलीज के बाद से डेवलपर्स और आम उपयोगकर्ताओं के बीच लोकप्रियता हासिल कर रहा है। मैं
एक अलग प्रणाली का उपयोग? Dotclear एक बहुत ही सरल ब्लॉगिंग इंजन है। यह खुला-स्रोत है और उपयोग में आसान है। यह ट्यूटोरियल इंस्टालेशन पर जाएगा
एक अलग प्रणाली का उपयोग? MODX क्रांति एक तेज, लचीला, स्केलेबल, मुक्त और खुला स्रोत है, एंटरप्राइज़-ग्रेड कंटेंट मैनेजमेंट सिस्टम (CMS) i लिखा है
एक अलग प्रणाली का उपयोग? कांटा PHP में लिखा गया एक खुला स्रोत CMS है। Forks स्रोत कोड GitHub पर होस्ट किया गया है। यह मार्गदर्शिका आपको बताएगी कि कांटा CM कैसे स्थापित किया जाए
टाइपसेट्टर PHP में लिखा गया एक खुला स्रोत CMS है जिसमें ट्रू WYSIWYG एडिटिंग और फ्लैट-फाइल स्टोरेज के साथ उपयोग में आसानी होती है। इस लेख में, हम installin होंगे
भूत प्रतिद्वंद्वी प्रतिद्वंद्वी के लिए नवीनतम और सबसे बड़ा अपस्टार्ट है। थीम विकास त्वरित और आसान है क्योंकि घोस्ट डेवलपर्स ने दोनों वें का उपयोग करने का निर्णय लिया है
एक अलग प्रणाली का उपयोग? Jekyll WordPress का एक अच्छा विकल्प है। यह किसी भी डेटाबेस की आवश्यकता नहीं है और यह एक भाषा के साथ काम करता है कई परिचित बुद्धि हैं
परिचय आप अपने OpenBSD को डिफ़ॉल्ट के करीब स्थापित करते हैं और कई अतिरिक्त पैकेजों के बिना, यह जितना अधिक सुरक्षित होगा। जबकि ज्यादा कम्मो
एक अलग प्रणाली का उपयोग? MODX क्रांति एक तेज, लचीला, स्केलेबल, मुक्त और खुला स्रोत है, एंटरप्राइज़-ग्रेड कंटेंट मैनेजमेंट सिस्टम (CMS) i लिखा है
एक अलग प्रणाली का उपयोग? घोस्ट एक ओपन सोर्स ब्लॉगिंग प्लेटफॉर्म है जो अपने 201 के बाद से डेवलपर्स और आम उपयोगकर्ताओं के बीच लोकप्रियता हासिल कर रहा है
LiteCart PHP, jQuery और HTML में लिखा गया एक स्वतंत्र और ओपन सोर्स शॉपिंग कार्ट प्लेटफॉर्म है। यह ई-कॉमर्स सॉफ्टवेअर का उपयोग करने के लिए एक सरल, हल���का और आसान है
एनएफएस एक नेटवर्क-आधारित फाइल सिस्टम है जो कंप्यूटरों को कंप्यूटर नेटवर्क पर फाइलों तक पहुंचने की अनुमति देता है। यह मार्गदर्शिका बताती है कि आप एनएफ पर फ़ोल्डर्स को कैसे उजागर कर सकते हैं
एक अलग प्रणाली का उपयोग? माटोमो (पूर्व में पिविक) एक ओपन सोर्स एनालिटिक्स प्लेटफॉर्म है, जो गूगल एनालिटिक्स का एक खुला विकल्प है। Matomo स्रोत को होस्ट किया गया है
टीमटॉक एक कॉन्फ्रेंसिंग प्रणाली है जो उपयोगकर्ताओं को उच्च-गुणवत्ता वाले ऑडियो / वीडियो वार्तालाप, टेक्स्ट चैट, स्थानांतरण फ़ाइलें और स्क्रीन साझा करने की अनुमति देती है। यह मैं
परिचय यह आलेख बताएगा कि विंडोज सर्वर 2012 पर गारस मोड सर्वर को कैसे डाउनलोड और इंस्टॉल किया जाए। यह गाइड गहराई में होने के लिए बनाया गया है।
एक अलग प्रणाली का उपयोग? परिचय CyberPanel बाजार पर पहला नियंत्रण पैनल है जो दोनों खुला स्रोत है और OpenLiteSpeed का उपयोग करता है। क्या थी?
FFmpeg ऑडियो और वीडियो रिकॉर्ड करने, कन्वर्ट करने और स्ट्रीम करने के लिए एक लोकप्रिय ओपन सोर्स समाधान है, जो सभी प्रकार की ऑनलाइन स्ट्रीमिंग सेवाओं में व्यापक रूप से उपयोग किया जाता है। मैं
एलयूकेएस (लिनक्स यूनिफाइड की सेटअप) लिनक्स के लिए उपलब्ध विभिन्न डिस्क एन्क्रिप्शन प्रारूपों में से एक है जो प्लेटफॉर्म एग्नॉस्टिक है। यह ट्यूटोरियल आपको बुद्धि प्रदान करेगा
Vultr अपने VPS को कॉन्फ़िगर करने, स्थापित करने और उपयोग करने के लिए कई अलग-अलग तरीके प्रदान करता है। क्रेडेंशियल एक्सेस करें आपके VPS के लिए डिफ़ॉल्ट एक्सेस क्रेडेंशियल ar
अक्टूबर एक खुला स्रोत सामग्री प्रबंधन प्रणाली है जो लारवेल PHP फ्रेमवर्क पर आधारित है। एक सुरुचिपूर्ण इंटरफ़ेस और एक संक्षिप्त मॉड्यूलर वास्तुकला के साथ