Fork CMS installeren op Fedora 28
Gebruikt u een ander systeem? Fork is een open source CMS geschreven in PHP. De broncode van Forks wordt gehost op GitHub. In deze handleiding wordt uitgelegd hoe u Fork CM installeert
Ghost is een open source blogplatform dat sinds de release in 2013 aan populariteit wint onder ontwikkelaars en gewone gebruikers. Het legt de nadruk op inhoud en bloggen. Het meest aantrekkelijke van Ghost is het eenvoudige, schone en responsieve ontwerp. Je kunt je blogposts schrijven vanaf een mobiele telefoon. Content for Ghost is geschreven in de Markdown-taal. Ghost is perfect geschikt voor individuen of kleine groepen schrijvers.
In deze gids gaan we een veilige Ghost v0.11.x LTS- blog opzetten en implementeren op een Fedora 25 VPS met Let's Encrypt , Certbot , Node.js , NPM , NGINX en MySQL .
semanage port -a -t http_port_t -p tcp 2368
.Controleer Fedora-versie:
cat /etc/fedora-release
# Fedora release 25 (Twenty Five)
Maak een nieuwe niet-rootgebruiker aan :
useradd -c "John Doe" johndoe && passwd johndoe
Maak het supergebruiker door het aan de wheel
groep toe te voegen :
usermod -aG wheel johndoe
Overschakelen naar nieuwe gebruiker:
su - johndoe
Update de software van uw besturingssysteem:
sudo dnf check-update || sudo dnf upgrade -y
Stel de tijdzone in:
timedatectl list-timezones
sudo timedatectl set-timezone 'Region/City'
Ontwikkeltools installeren:
sudo dnf install @development-tools -y
Installeer Vim-teksteditor en Wget:
sudo dnf install -y vim wget
Start het systeem indien nodig opnieuw op:
sudo shutdown -r now
OPMERKING : Voordat u met deze stap begint, moet u ervoor zorgen dat u DNS- records voor uw domein heeft ingesteld.
We gaan Let's Encrypt CA en de Certbot-client van EFF gebruiken om een SSL / TLS- certificaat te verkrijgen voor onze Ghost-blog. Vergeet niet om alle instanties van te vervangen blog.domain.tld
door uw domeinnaam.
Installeer Certbot (voorheen Let's Encrypt client ) software voor certificaatbeheer gemaakt met Python:
sudo dnf install -y certbot
Controleer Certbot-versie:
certbot --version
# certbot 0.14.1
Verkrijg een RSA- certificaat met behulp van de standalone authenticatiemethode (plug-in):
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. . . .
# . . .
Na het doorlopen van eerdere stappen, staan uw certificaat en privésleutel in de /etc/letsencrypt/live/blog.domain.tld
directory.
OPMERKING : Ghost ondersteunt momenteel alleen Node.js-versies 4.5+ en 6.9+.
Ghost is gebouwd op Node.js. We gaan de aanbevolen versie voor Ghost installeren die v6 Boron LTS
op het moment van schrijven is.
Download en installeer Node.js v6 LTS:
curl --silent --location https://rpm.nodesource.com/setup_6.x | sudo bash -
sudo dnf install -y nodejs
Controleer Node.js en NPM-versie:
node -v && npm -v
# v6.11.2
# 3.10.10
Ghost wordt standaard geconfigureerd om een SQLite-database te gebruiken, waarvoor geen configuratie vereist is.
Als alternatief kan Ghost ook worden gebruikt met een MySQL-database door de databaseconfiguratie te wijzigen. U moet eerst een database en gebruiker aanmaken, daarna kunt u de bestaande sqlite3-configuratie wijzigen.
Download en installeer de nieuwste versie van MySQL (momenteel 5.7 ) vanuit de officiële MySQL Dnf-repository:
cd /tmp
# Adding the MySQL dnf Repository
wget https://dev.mysql.com/get/mysql57-community-release-fc25-10.noarch.rpm
sudo dnf install -y mysql57-community-release-fc25-10.noarch.rpm
# Installing MySQL
sudo dnf install -y mysql-community-server
Controleer MySQL-versie:
mysql --version
# mysql Ver 14.14 Distrib 5.7.19, for Linux (x86_64) using EditLine wrapper
Start MySQL Server en controleer de status:
sudo systemctl start mysqld.service
sudo systemctl status mysqld.service
MySQL-versie 5.7 of hoger genereert een tijdelijk willekeurig wachtwoord voor de MySQL- root
gebruiker nadat de installatie en het wachtwoord is opgeslagen in het MySQL-foutenlogbestand, dat zich bevindt op /var/log/mysqld.log
. Gebruik het volgende commando om het te onthullen:
sudo grep 'temporary password' /var/log/mysqld.log
Voer het mysql_secure_installation
script uit om uw database een beetje te beveiligen:
OPMERKING : Plug-in voor wachtwoordvalidatie is geïnstalleerd en ingeschakeld, dus uw nieuwe wachtwoord voor de
root
gebruiker moet sterk zijn ( één hoofdletter, één kleine letter, één cijfer en één speciaal teken, en dat de totale wachtwoordlengte minimaal 8 tekens is) ). Als je dat wilt ontspannen of de plug-in volledig wilt uitschakelen ( niet aanbevolen ), raadpleeg dan de officiële MySQL-documentatie voor hoe je dat moet doen.
sudo mysql_secure_installation
Log in op MySQL als rootgebruiker:
mysql -u root -p
# Enter password:
Maak een nieuwe MySQL-database en gebruiker:
create database dbname;
grant all on dbname.* to 'user' identified by 'password';
MySQL afsluiten:
exit
Download en installeer NGINX:
sudo dnf install -y nginx
Controleer of het is geïnstalleerd door de NGINX-versie te controleren:
sudo nginx -v
# nginx version: nginx/1.10.2
Controleer de status, schakel NGINX-service in en start deze (daemon):
sudo systemctl status nginx.service # inactive (dead)
sudo systemctl enable nginx.service
sudo systemctl start nginx.service
Maak een /etc/nginx/ssl
directory en genereer een nieuwe Diffie-Hellman ( DH ) -parameters:
sudo mkdir -p /etc/nginx/ssl
sudo openssl dhparam -out /etc/nginx/ssl/dhparams-2048.pem 2048
Maak een logboekdirectory voor blog.domain.tld
virtuele host:
sudo mkdir -p /var/log/nginx/blog.domain.tld
Configureer NGINX als een HTTP ( S ) reverse-proxyserver:
sudo vim /etc/nginx/conf.d/ghost.conf
Plak het volgende in /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;
listen 80;
listen [::]:443 ssl http2;
listen 443 ssl http2;
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;
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 "";
}
}
Bewaar en test NGINX-configuratie op syntaxisfouten:
sudo nginx -t
Herlaad NGINX-configuratie:
sudo systemctl reload nginx.service
OPMERKING : als je meerdere Ghost-blogs op dezelfde VPS wilt hosten, moet elke Ghost-instantie op een afzonderlijke poort worden uitgevoerd.
Maak een document root directory:
sudo mkdir -p /var/www/
Maak een nieuwe spookgebruiker aan:
sudo useradd -c 'Ghost application' ghost
Ghost downloaden:
curl -L https://github.com/TryGhost/Ghost/releases/download/0.11.11/Ghost-0.11.11.zip -o ghost.zip
Pak Ghost uit in de /var/www/ghost
directory (aanbevolen installatielocatie):
sudo unzip -uo ghost.zip -d /var/www/ghost
rm ghost.zip
Ga naar de nieuwe spookdirectory:
cd /var/www/ghost
Wijzig het eigendom van de /var/www/ghost
directory:
sudo chown -R ghost:ghost .
Overschakelen naar nieuwe ghost
gebruiker:
sudo su - ghost
Navigeer naar document root /var/www/ghost
:
cd /var/www/ghost
Installeer Ghost alleen met productie-afhankelijkheden. Wanneer dit is voltooid, wordt Ghost geïnstalleerd:
npm install --production
Configure Ghost door het veranderen url
, mail
en database
eigendom van de productie object binnenkant van config.js
het bestand:
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
},
// . . .
// . . .
OPMERKING : u moet
Start Ghost in productieomgeving:
npm start --production
Ghost zal nu rennen. Zowel blog front-end als admin-interface zijn beveiligd met HTTPS en HTTP / 2 werkt ook. U kunt uw browser openen en de site bezoeken op https://blog.domain.tld
. Vergeet niet te vervangen blog.domain.tld
door uw domeinnaam.
Sluit het Ghost-proces af door op CTRL
+ te drukken C
en de Ghost-gebruiker terug te sluiten naar de niet-rootgebruiker die je aan het begin hebt gemaakt:
exit
Als je je terminalsessie afsluit met je VPS, zal je blog ook verdwijnen. Dat is niet goed. Om dit te voorkomen, gaan we systemd gebruiken. Het houdt onze blog 24/7 bij.
Maak een ghost.service
systemd unit bestand. Voer sudo uit sudo vim /etc/systemd/system/ghost.service
en kopieer / plak de onderstaande inhoud:
[Unit]
Description=Ghost - the professional publishing platform
Documentation=https://docs.ghost.org/v0.11.11/docs
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
Inschakelen en starten ghost.service
:
sudo systemctl enable ghost.service && sudo systemctl start ghost.service
Controleer ghost.service
status:
sudo systemctl status ghost.service && sudo systemctl is-enabled ghost.service
Navigeer naar https://blog.domain.tld/ghost/
en maak een Ghost admin-gebruiker. Doe dit zo snel mogelijk!
Dat is het. We hebben nu een volledig functionele Ghost-blog. Uw server levert inhoud via HTTP / 2 indien ondersteund door de client. Als je het standaard Ghost-thema genaamd Casper wilt wijzigen in een aangepast thema , kun je het thema gewoon downloaden en uitpakken in de /var/www/ghost/content/themes
map en het selecteren via de Ghost-beheerinterface op https://blog.domain.tld/ghost
.
Gebruikt u een ander systeem? Fork is een open source CMS geschreven in PHP. De broncode van Forks wordt gehost op GitHub. In deze handleiding wordt uitgelegd hoe u Fork CM installeert
Gebruikt u een ander systeem? Ghost is een open source blogplatform dat sinds zijn populariteit aan populariteit wint onder ontwikkelaars en gewone gebruikers
Gebruikt u een ander systeem? Ghost is een open source blogplatform dat sinds zijn populariteit aan populariteit wint onder ontwikkelaars en gewone gebruikers
Neos is een innovatief open source contentmanagementsysteem dat geweldig is voor het maken en bewerken van online content. Met het oog op auteurs en redacteuren, Neo
Vultr-instanties zijn een geweldige manier om uw WordPress-blog uit te voeren, maar een meer opvallende extensie voor WordPress is WooCommerce, een eCommerce-plug-in die de
Gebruikt u een ander systeem? MODX Revolution is een snel, flexibel, schaalbaar, open source, enterprise-grade Content Management System (CMS) geschreven in PHP. Het ik
Gebruikt u een ander systeem? MODX Revolution is een snel, flexibel, schaalbaar, gratis en open source, enterprise-grade Content Management System (CMS) geschreven i
Introductie WordPress is het dominante contentmanagementsysteem op internet. Het ondersteunt alles, van blogs tot complexe websites met dynamische inhoud
Gebruikt u een ander systeem? Fork is een open source CMS geschreven in PHP. De broncode van Forks wordt gehost op GitHub. In deze handleiding wordt uitgelegd hoe u Fork CM installeert
Gebruikt u een ander systeem? Ghost is een open source blogplatform dat sinds de release in 2013 aan populariteit wint onder ontwikkelaars en gewone gebruikers. ik
Gebruikt u een ander systeem? Dotclear is een heel eenvoudige blog-engine. Het is open source en makkelijk te gebruiken. Deze tutorial gaat door de installatie op
Een veelgebruikt gebruik van een virtuele Vultr-server is het hosten van Wordpress-websites. Deze handleiding laat zien hoe u de configuratie van een virtuele server vanuit scratc automatiseert
Ghost is de nieuwste en beste upstart om WordPress te evenaren. Thema-ontwikkeling is snel en gemakkelijk te leren omdat de Ghost-ontwikkelaars besloten om beide te gebruiken
Inleiding Hoe dichter u uw OpenBSD-installatie bij de standaard houdt en zonder zoveel toegevoegde pakketten, hoe veiliger het zal zijn. Terwijl de meer commo
Ghost is een modern, open source publicatieplatform gebouwd op Node.js met een Ember.js-beheerclient, een JSON-API en een thema-API, mogelijk gemaakt door Handlebars.js. Ghos
Gebruikt u een ander systeem? Ghost is een open source blogplatform dat sinds zijn populariteit aan populariteit wint onder ontwikkelaars en gewone gebruikers
Gebruikt u een ander systeem? Fork is een open source CMS geschreven in PHP. De broncode van Forks wordt gehost op GitHub. In deze handleiding wordt uitgelegd hoe u Fork CM installeert
Typesetter is een open source CMS geschreven in PHP gericht op gebruiksgemak met True WYSIWYG-bewerking en opslag van platte bestanden. In dit artikel zullen we installeren
Gebruikt u een ander systeem? MODX Revolution is een snel, flexibel, schaalbaar, gratis en open source, enterprise-grade Content Management System (CMS) geschreven i
Ransomware-aanvallen nemen toe, maar kan AI helpen het nieuwste computervirus het hoofd te bieden? Is AI het antwoord? Lees hier weten is AI boezem of vloek
ReactOS, een open source en gratis besturingssysteem is hier met de nieuwste versie. Kan het voldoen aan de behoeften van moderne Windows-gebruikers en Microsoft uitschakelen? Laten we meer te weten komen over deze oude stijl, maar een nieuwere OS-ervaring.
WhatsApp heeft eindelijk de Desktop-app voor Mac- en Windows-gebruikers gelanceerd. Nu heb je eenvoudig toegang tot WhatsApp vanuit Windows of Mac. Beschikbaar voor Windows 8+ en Mac OS 10.9+
Lees dit om te weten hoe kunstmatige intelligentie populair wordt onder de kleinschalige bedrijven en hoe het de kansen vergroot om ze te laten groeien en hun concurrenten voorsprong te geven.
Onlangs heeft Apple macOS Catalina 10.15.4 uitgebracht, een aanvullende update om problemen op te lossen, maar het lijkt erop dat de update meer problemen veroorzaakt die ertoe leiden dat mac-machines worden gemetseld. Lees dit artikel voor meer informatie
13 Commerciële data-extractietools voor big data
Onze computer slaat alle gegevens op een georganiseerde manier op, het zogenaamde Journaling-bestandssysteem. Het is een efficiënte methode waarmee de computer bestanden kan zoeken en weergeven zodra u op zoeken drukt.https://wethegeek.com/?p=94116&preview=true
Naarmate de wetenschap zich snel ontwikkelt en veel van onze inspanningen overneemt, nemen ook de risico's toe om onszelf te onderwerpen aan een onverklaarbare singulariteit. Lees, wat singulariteit voor ons kan betekenen.
Een inzicht in 26 Big Data-analysetechnieken: deel 1
AI in de zorg heeft de afgelopen decennia grote sprongen gemaakt. De toekomst van AI in de gezondheidszorg groeit dus nog steeds met de dag.