Nginx Reverse Proxy dengan Ghost di Ubuntu 14.04

Ghost adalah platform blog sumber terbuka dan terbuka yang ditulis dalam node.js , sepenuhnya disesuaikan dan dikhaskan untuk penerbitan.

Sediakan pelayan: Kemas kini pakej, Pasang Node.js dan NPM

Kami akan menunjukkan pemasangannya dengan masuk ke pelayan seperti itu root, sehingga kami tidak perlu menambahkan sudosebelum setiap perintah. Sekiranya anda log masuk sebagai pengguna lain, ingat bahawa anda memerlukannya sudo.

Di pelayan anda, jalankan yang berikut untuk mengemas kini indeks paket, menaikkan pakej, dan memasang nodejsdan npm.

apt-get update
apt-get upgrade

apt-get install python software-properties-common gcc g++ make -y  # auto install
add-apt-repository ppa:chris-lea/node.js -y

Keluaran dari arahan ini harus serupa dengan:

gpg: keyring `/tmp/tmpvpe2ugzj/secring.gpg' created
gpg: keyring `/tmp/tmpvpe2ugzj/pubring.gpg' created
gpg: requesting key C7917B12 from hkp server keyserver.ubuntu.com
gpg: /tmp/tmpvpe2ugzj/trustdb.gpg: trustdb created
gpg: key C7917B12: public key "Launchpad chrislea" imported
gpg: Total number processed: 1
gpg:               imported: 1  (RSA: 1)
OK

Secara automatik, kunci penandatanganan pakej akan ditambahkan ke keyring (supaya pakej yang dimuat dapat disahkan), dan PPA akan ditambahkan ke APT sources.list.d.

Sekarang, mari kita jalankan:

apt-get update  # again 
apt-get install nodejs -y

Jalankan npmuntuk menguji pemasangan. Anda akan melihat npmpenggunaan dicetak ke skrin:

Usage: npm <command>
...
...
[email protected] /usr/lib/node_modules/npm

Sekarang kita boleh memasang Ghost.

Pemasangan: Ghost dan Nginx

Oleh kerana Ghost kini dianggap "stabil", ia dapat dipasang melalui npm. Pasang dengan arahan berikut:

npm install -g ghost --production

Abaikan sebarang amaran buat masa ini.

Seterusnya, kami akan memulakan Ghost dan memeriksa apakah ia berfungsi dengan baik.

cd /usr/lib/node_modules/ghost
npm start --production

Output akan kelihatan seperti ini:

> [email protected] start /usr/lib/node_modules/ghost
> node index

Migrations: Database initialisation required for version 003
...
Migrations: Complete
Ghost is running... 
Your blog is now available on http://my-ghost-blog.com 
Ctrl+C to shut down

Ianya berfungsi! Gunakan Ctrl-C untuk mematikan Ghost, dan beralih ke langkah seterusnya: memasang (dan mengkonfigurasi) Nginx.

Nginx sangat mudah dipasang. Jalankan arahan berikut:

apt-get install nginx

Nginx akan dikonfigurasi untuk membolehkan sambungan dari mana saja di alam liar ke port 80 (atau 443, jika menggunakan SSL ) pada pelayan anda, yang kemudiannya diteruskan (" diproksi ") ke Ghost. Ini adalah cara orang menyambung ke blog anda.

Konfigurasi Nginx juga tidak begitu sukar. Ikuti langkah-langkah ini untuk mengkonfigurasi proksi Ghost.

Pertama, alih keluar fail konfigurasi lalai:

cd /etc/nginx/
rm sites-enabled/default

Kemudian, buat fail konfigurasi baru:

cd sites-available
touch ghost

Sesuaikan baris berikut dengan keperluan anda dan gunakan sesuatu seperti nanoatau vitampal di dalamnya (anda perlu menetapkan server_nameke nama domain anda):

server {
    listen 80;
    server_name yourdomain.tld;
    access_log /var/log/nginx/yourdomain.tld.log;  # if you want logging

    location / {
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header HOST $http_host;       
        proxy_pass http://127.0.0.1:2368;
        proxy_redirect off;
    }
}

Symink fail konfigurasi anda:

cd /etc/nginx
ln -s sites-available/ghost sites-enabled/ghost

Mulakan semula Nginx:

service nginx restart

Pada ketika ini, Nginx dipasang, dikonfigurasi, dan dijalankan di pelayan anda.

Akhirnya: Mulakan Ghost secara automatik

Penyelia adalah sistem kawalan proses yang membolehkan anda menjalankan Ghost pada permulaan tanpa menggunakan skrip init. Kami akan memasang Penyelia untuk menguruskan Ghost.

Untuk memasang Penyelia, jalankan:

apt-get install supervisor
service supervisor start

Kemudian, buat fail skrip baru di /etc/supervisor/conf.d/ghost.conf. Tampalkan kandungan ini:

[program:ghost]
command = node /usr/lib/node_modules/ghost/index.js
directory = /usr/lib/node_modules/ghost
user = ghost
autostart = true
autorestart = true
stdout_logfile = /var/log/supervisor/ghost.log
stderr_logfile = /var/log/supervisor/ghost_err.log
environment = NODE_ENV="production"

Simpan dan tutup fail.

Seterusnya, kita perlu membuat pengguna untuk Ghost dan memberikannya izin untuk mengakses fail dan pangkalan data Ghost. Jalankan arahan berikut:

useradd ghost
chown -R ghost /usr/lib/node_modules/ghost/
supervisorctl reread
supervisorctl update

Penyediaan kami selesai!

Sekarang anda boleh mengawal Ghost dengan menjalankan supervisorctl start ghostdan supervisorctl stop ghost.



Leave a Comment

Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1

Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1

Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1

6 Perkara Yang Sangat Menggila Tentang Nintendo Switch

6 Perkara Yang Sangat Menggila Tentang Nintendo Switch

Ramai daripada anda tahu Switch akan keluar pada Mac 2017 dan ciri baharunya. Bagi yang tidak tahu, kami telah menyediakan senarai ciri yang menjadikan 'Tukar' sebagai 'gajet yang mesti ada'.

Janji Teknologi Yang Masih Tidak Ditepati

Janji Teknologi Yang Masih Tidak Ditepati

Adakah anda menunggu gergasi teknologi memenuhi janji mereka? semak apa yang masih belum dihantar.

Fungsi Lapisan Seni Bina Rujukan Data Besar

Fungsi Lapisan Seni Bina Rujukan Data Besar

Baca blog untuk mengetahui lapisan berbeza dalam Seni Bina Data Besar dan fungsinya dengan cara yang paling mudah.

Bagaimana AI Boleh Mengambil Automasi Proses ke Tahap Seterusnya?

Bagaimana AI Boleh Mengambil Automasi Proses ke Tahap Seterusnya?

Baca ini untuk mengetahui cara Kecerdasan Buatan semakin popular di kalangan syarikat berskala kecil dan cara ia meningkatkan kebarangkalian untuk menjadikan mereka berkembang dan memberikan pesaing mereka kelebihan.

CAPTCHA: Berapa Lama Ia Boleh Kekal Sebagai Teknik Berdaya maju Untuk Perbezaan Manusia-AI?

CAPTCHA: Berapa Lama Ia Boleh Kekal Sebagai Teknik Berdaya maju Untuk Perbezaan Manusia-AI?

CAPTCHA telah menjadi agak sukar untuk diselesaikan oleh pengguna dalam beberapa tahun kebelakangan ini. Adakah ia dapat kekal berkesan dalam pengesanan spam dan bot pada masa hadapan?

Keunikan Teknologi: Masa Depan Tamadun Manusia yang Jauh?

Keunikan Teknologi: Masa Depan Tamadun Manusia yang Jauh?

Apabila Sains Berkembang pada kadar yang pantas, mengambil alih banyak usaha kita, risiko untuk menundukkan diri kita kepada Ketunggalan yang tidak dapat dijelaskan juga meningkat. Baca, apakah makna ketunggalan bagi kita.

Teleperubatan Dan Penjagaan Kesihatan Jauh: Masa Depan Ada Di Sini

Teleperubatan Dan Penjagaan Kesihatan Jauh: Masa Depan Ada Di Sini

Apakah teleperubatan, penjagaan kesihatan jauh dan impaknya kepada generasi akan datang? Adakah ia tempat yang baik atau tidak dalam situasi pandemik? Baca blog untuk mencari paparan!

Pernahkah Anda Terfikir Bagaimana Penggodam Mendapatkan Wang?

Pernahkah Anda Terfikir Bagaimana Penggodam Mendapatkan Wang?

Anda mungkin pernah mendengar bahawa penggodam memperoleh banyak wang, tetapi pernahkah anda terfikir bagaimana mereka memperoleh wang seperti itu? Mari berbincang.

Kemas Kini Tambahan macOS Catalina 10.15.4 Menyebabkan Lebih Banyak Isu Daripada Penyelesaian

Kemas Kini Tambahan macOS Catalina 10.15.4 Menyebabkan Lebih Banyak Isu Daripada Penyelesaian

Baru-baru ini Apple mengeluarkan macOS Catalina 10.15.4 kemas kini tambahan untuk menyelesaikan masalah tetapi nampaknya kemas kini itu menyebabkan lebih banyak masalah yang membawa kepada pemusnahan mesin mac. Baca artikel ini untuk mengetahui lebih lanjut