الوصول
- فتح الرابط:
https://<SERVER_IP> - قبول تحذير شهادة المتصفح (الشهادة موقَّعة ذاتياً)
- اتبع معالج الإعداد الأولي لإنشاء مستخدم root
الملفات والمجلدات المهمة
- Config File:
/etc/default/audiobookshelf - Service File:
/lib/systemd/system/audiobookshelf.service - إعدادات Nginx:
/etc/nginx/sites-available/audiobookshelf - شهادة SSL:
/etc/nginx/ssl/fullchain.pem - المفتاح الخاص SSL:
/etc/nginx/ssl/privkey.pem - Access Log:
/var/log/nginx/audiobookshelf.access.log - Error Log:
/var/log/nginx/audiobookshelf.error.log
إدارة الخدمة
التحقق من حالة الخدمة:
systemctl status audiobookshelf
إعادة تشغيل الخدمة:
systemctl restart audiobookshelf
إيقاف الخدمة:
systemctl stop audiobookshelf
بدء الخدمة:
systemctl start audiobookshelf
عرض السجلات:
journalctl -u audiobookshelf -f
إدارة Nginx
إعداد الاختبار:
nginx -t
إعادة تشغيل NGINX:
systemctl restart nginx
أعد تحميل Nginx:
systemctl reload nginx
التحقق من حالة NGINX:
systemctl status nginx
تفعيل SSL مع نطاق
1. وجِّه نطاقك إلى IP الخادم.
2. Install Certbot:
apt install -y certbot python3-certbot-nginx
3. Generate a Let's Encrypt certificate:
certbot certonly --nginx --non-interactive --agree-tos --email [email protected] -d yourdomain.com
4. Replace SSL paths in Nginx config:
vim /etc/nginx/sites-available/audiobookshelf
# Before:
# ssl_certificate /etc/nginx/ssl/fullchain.pem;
# ssl_certificate_key /etc/nginx/ssl/privkey.pem;
# After:
# ssl_certificate /etc/letsencrypt/live/yourdomain.com/fullchain.pem;
# ssl_certificate_key /etc/letsencrypt/live/yourdomain.com/privkey.pem;
5. Replace server_name _; with your domain in both HTTP and HTTPS blocks:
vim /etc/nginx/sites-available/audiobookshelf
# Before:
server_name: _;
# After:
server_name: yourdomain.com;
6. Reload Nginx:
systemctl reload nginx
ملاحظات
- يعمل Audiobookshelf كخدمة systemd أصلية
- Nginx acts as a reverse proxy and TLS terminator
- يتم تمكين HTTPS افتراضياً باستخدام شهادة موقَّعة ذاتياً
- Large uploads are supported (
client_max_body_size 10240M) - Audiobookshelf listens on
127.0.0.1:13378and is only accessible through Nginx