Plesk Üzerinde Node.js veya Python Uygulaması Yayınlama
Plesk Üzerinde Node.js veya Python Uygulaması Yayınlama
Plesk Panel, yalnızca klasik PHP projeleri için değil; modern Node.js ve Python tabanlı web uygulamalarının da kolayca barındırılabildiği esnek bir platformdur. Bu makalede, Plesk üzerinde Node.js veya Python uygulamasının nasıl yayınlanacağını, yapılandırılacağını ve çalıştırılacağını adım adım anlatıyoruz.
- 1) Gerekli Uzantıların (Extension) Kurulumu
- 2) Node.js Uygulaması Yayınlama
- Örnek Express.js Uygulaması
- 3) Python Uygulaması Yayınlama
- Örnek Flask Uygulaması
- 4) Nginx Reverse Proxy Yapılandırması
- 5) Çevresel Değişkenler (Environment Variables)
- 6) Günlük (Log) Yönetimi
- 7) Sorun Giderme
- 8) Performans ve Ölçekleme
- Sonuç
1) Gerekli Uzantıların (Extension) Kurulumu
İlk olarak Plesk’e Node.js veya Python desteği eklenmelidir:
- Plesk menüsünden Extensions sekmesine gidin.
- Arama kutusuna “Node.js” veya “Python” yazın.
- İlgili eklentiyi bulun ve Install butonuna tıklayın.
Kurulum tamamlandıktan sonra Plesk, bu dillerde uygulamaları otomatik olarak tanıyabilir hale gelir.
2) Node.js Uygulaması Yayınlama
- Plesk ana panelden Domains → example.com sekmesine gidin.
- “Node.js” menüsünü seçin ve “Enable Node.js” butonuna tıklayın.
- Uygulama kök dizinini (örneğin
httpdocs/app) seçin. - Application startup file: kısmına
app.jsveyaserver.jsdosya adını girin. - “Restart App” butonuna tıklayarak uygulamayı başlatın.
Örnek Express.js Uygulaması
const express = require('express');
const app = express();
app.get('/', (req, res) => res.send('Node.js uygulaması Plesk üzerinde çalışıyor!'));
app.listen(process.env.PORT || 3000, () => console.log('Server çalışıyor...'));
Plesk otomatik olarak bir port (örneğin 3000) atar ve Nginx reverse proxy üzerinden dış dünyaya yönlendirir.
3) Python Uygulaması Yayınlama
- Plesk Panel → Domains → example.com → Python menüsüne gidin.
- “Enable Python” seçeneğini aktif edin.
- Application Root: Python uygulamanızın dizinini belirtin (ör.
httpdocs/app). - Entry Point: Dosya adını girin (ör.
app.py). - Python Version: 3.8 veya üzeri sürüm seçin.
Örnek Flask Uygulaması
from flask import Flask
app = Flask(__name__)
@app.route('/')
def home():
return "Flask uygulaması Plesk üzerinde çalışıyor!"
if __name__ == '__main__':
app.run(host='0.0.0.0', port=5000)
Flask uygulamasını requirements.txt dosyasıyla birlikte yüklemeyi unutmayın. Plesk, “Install Requirements” seçeneğiyle bağımlılıkları otomatik kurabilir.
4) Nginx Reverse Proxy Yapılandırması
Node.js veya Python uygulaması genellikle bir portta (ör. 3000 veya 5000) çalışır. Plesk, Nginx üzerinden gelen istekleri bu porta yönlendirir:
location / {
proxy_pass http://127.0.0.1:3000/;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
Bu yapılandırma sayesinde uygulama dışarıdan https://example.com adresiyle erişilebilir hale gelir.
5) Çevresel Değişkenler (Environment Variables)
Plesk’te Node.js ve Python uygulamaları için özel ortam değişkenleri tanımlayabilirsiniz:
Domains → Node.js (veya Python) → Environment Variables
Buradan örneğin:
APP_ENV=production DB_URL=mysql://user:pass@localhost/dbname
değerlerini girebilirsiniz.
6) Günlük (Log) Yönetimi
Uygulama loglarını izlemek için:
- Plesk → Logs sekmesi üzerinden canlı görüntüleme.
- SSH ile:
tail -f /var/www/vhosts/example.com/logs/
7) Sorun Giderme
- “Application failed to start” hatası → app.js veya app.py yolu yanlış olabilir.
- “Port already in use” → başka bir uygulama aynı portu kullanıyor olabilir.
- “Permission denied” → dosya izinleri 755 olarak ayarlanmalı.
8) Performans ve Ölçekleme
- Node.js için PM2 veya forever gibi işlem yöneticileri kullanılabilir.
- Python uygulamalarında Gunicorn veya uWSGI tercih edilebilir.
- Yoğun trafik ortamlarında VDS veya Premium VDS planları önerilir.
Sonuç
Plesk Panel, yalnızca PHP değil, Node.js ve Python uygulamalarını da profesyonel şekilde barındırma ve yönetme imkanı sunar. Doğru yapılandırma ile web servislerinizi ölçeklenebilir, güvenli ve yüksek performanslı hale getirebilirsiniz. HostLigo altyapısında, tüm modern uygulama yığınları (Node, Django, Flask, Express) için optimize edilmiş hosting çözümleri bulabilirsiniz.