خادم المحتوى Calibre

يسمح لك خادم المحتوى في calibre بالوصول إلى مكتبات calibre الخاصة بك وقراءة الكتب مباشرة في متصفح على هاتفك المحمول المفضل أو جهازك اللوحي. ونتيجة لذلك، لا تحتاج إلى تثبيت أي تطبيقات مخصصة لقراءة/إدارة الكتب على هاتفك. ما عليك سوى استخدام المتصفح. يقوم الخادم بتنزيل الكتاب الذي تقرأه وتخزينه في ذاكرة تخزين مؤقت غير متصلة بالإنترنت حتى تتمكن من قراءته حتى عندما لا يكون هناك اتصال بالإنترنت.

لبدء تشغيل الخادم، انقر على زر الاتصال/المشاركة واختر بدء خادم المحتوى. قد تتلقى رسالة من جدار حماية جهاز الكمبيوتر الخاص بك أو برنامج مكافحة الفيروسات يسألك عما إذا كان من المقبول السماح بالوصول إلى calibre.exe. انقر على زر السماح أو موافق. ثم افتح متصفحًا (يفضل Chrome أو Firefox) في جهاز الكمبيوتر الخاص بك واكتب العنوان التالي:

http://127.0.0.1:8080

سيؤدي هذا إلى فتح صفحة في المتصفح تعرض لك مكتبات calibre الخاصة بك، انقر على أي منها وتصفح الكتب الموجودة فيها. انقر على كتاب، وسيعرض لك جميع البيانات الوصفية حول الكتاب، بالإضافة إلى أزرار لـ القراءة و التنزيل للكتاب. انقر على زر القراءة لبدء قراءة الكتاب.

ملاحظة

العنوان المستخدم أعلاه http://127.0.0.1:8080 سيعمل فقط على الكمبيوتر الذي يشغل calibre. للوصول إلى الخادم من أجهزة كمبيوتر/هواتف/أجهزة لوحية/إلخ أخرى، ستحتاج إلى القيام ببعض العمل الإضافي، كما هو موضح في القسم التالي.

الوصول إلى خادم المحتوى من أجهزة أخرى

هناك نوعان من الوصول عن بعد إلى الجهاز ستحتاج إليهما عادةً. النوع الأول والأبسط هو من داخل شبكتك المنزلية. إذا كنت تشغل calibre على جهاز كمبيوتر في شبكتك المنزلية وقمت أيضًا بتوصيل أجهزتك الأخرى بنفس الشبكة المنزلية، فستتمكن بسهولة من الوصول إلى الخادم على تلك الأجهزة.

الوصول إلى الخادم من الأجهزة الموجودة على شبكتك المنزلية

بعد بدء تشغيل الخادم في calibre كما هو موضح أعلاه، انقر على زر الاتصال/المشاركة مرة أخرى. بدلاً من إجراء بدء خادم المحتوى، يجب أن ترى إجراء إيقاف خادم المحتوى بدلاً من ذلك. على يمين هذا الإجراء ستظهر قائمة بعنوان IP ورقم منفذ. تبدو هذه كـ مجموعة من الأرقام مفصولة بنقاط. على سبيل المثال:

Stop Content server [192.168.1.5, port 8080]

تخبرك هذه الأرقام بالعنوان الذي يجب استخدامه للاتصال بالخادم في أجهزتك. باتباع المثال أعلاه، يصبح العنوان:

http://192.168.1.5:8080

الجزء الأول من العنوان هو دائمًا http:// الجزء التالي هو عنوان IP، وهو الأرقام قبل الفاصلة، وأخيرًا لدينا رقم المنفذ الذي يجب إضافته إلى عنوان IP بنقطتين (:). إذا كنت محظوظًا، فهذا كل ما تحتاجه وستكون تنظر إلى مكتبات calibre على جهازك. إذا لم يكن الأمر كذلك، فتابع القراءة.

استكشاف أخطاء اتصال الشبكة المنزلية وإصلاحها

إذا لم تتمكن من الوصول إلى الخادم من جهازك، فجرب الخطوات التالية:

  1. تحقق من أن الخادم قيد التشغيل عن طريق فتح العنوان http://127.0.0.1:8080 في متصفح يعمل على نفس الكمبيوتر الذي يشغل الخادم.

  2. تحقق من أن جدار الحماية/مكافحة الفيروسات الخاص بك يسمح بالاتصالات بجهاز الكمبيوتر الخاص بك على المنفذ 8080 ولبرنامج calibre. أسهل طريقة لـ إزالة جدار الحماية/مكافحة الفيروسات كمصدر للمشاكل هي إيقاف تشغيلهما مؤقتًا ثم محاولة الاتصال. يجب عليك أولاً فصل الاتصال بالإنترنت، قبل إيقاف تشغيل جدار الحماية، للحفاظ على جهاز الكمبيوتر الخاص بك آمنًا.

  3. تحقق من أن جهازك وجهاز الكمبيوتر الخاص بك على نفس الشبكة. هذا يعني أنهما يجب أن يكونا متصلين بنفس جهاز التوجيه اللاسلكي. على وجه الخصوص، لا ينبغي لأي منهما استخدام اتصال خلوي أو اتصال Wi-Fi مباشر مقدم من مزود خدمة الإنترنت.

  4. إذا كان لديك إعداد شبكة غير قياسي، فقد يكون عنوان IP المعروض في قائمة الاتصال/المشاركة غير صحيح. في هذه الحالة، سيتعين عليك معرفة ما هو عنوان IP الصحيح الذي يجب استخدامه بنفسك. لسوء الحظ، نظرًا للتنوع اللانهائي في تكوينات الشبكة الممكنة، لا يمكننا أن نقدم لك خارطة طريق للقيام بذلك.

  5. إذا قمت بإعداد اسم مستخدم وكلمة مرور، فحاول أولاً بدون ذلك لترى ما إذا كان يسبب مشاكل. تحتوي بعض أجهزة الحبر الإلكتروني على متصفحات لا تتعامل مع المصادقة. يمكنك أحيانًا التحايل على ذلك عن طريق تضمين اسم المستخدم وكلمة المرور في عنوان URL، على سبيل المثال: http://اسم_المستخدم:كلمة_المرور@192.168.1.2:8080.

  6. إذا واجهتك مشكلة، يمكنك دائمًا طلب المساعدة في منتديات مستخدمي calibre.

الوصول إلى الخادم من أي مكان على الإنترنت

تحذير

قبل القيام بذلك، يجب عليك تشغيل حماية اسم المستخدم/كلمة المرور في الخادم، وإلا سيتمكن أي شخص في العالم من الوصول إلى كتبك. انتقل إلى التفضيلات → المشاركة → المشاركة عبر الشبكة وقم بتمكين خيار طلب اسم المستخدم وكلمة المرور للوصول إلى خادم المحتوى.

بينما تختلف التفاصيل الخاصة بإعداد الوصول إلى الإنترنت اعتمادًا على تكوين الشبكة ونوع الكمبيوتر الذي تستخدمه، فإن المخطط الأساسي هو كما يلي.

  1. اكتشف عنوان IP الخارجي للكمبيوتر الذي ستقوم بتشغيل الخادم عليه. يمكنك القيام بذلك عن طريق زيارة موقع ما هو عنوان IP الخاص بي في متصفح يعمل على الكمبيوتر.

  2. إذا كان الكمبيوتر خلف جهاز توجيه، قم بتمكين إعادة توجيه المنفذ على جهاز التوجيه لـ إعادة توجيه المنفذ 8080 (أو أي منفذ تختاره لتشغيل خادم محتوى calibre عليه) إلى الكمبيوتر.

  3. تأكد من السماح لخادم calibre بالمرور عبر أي جدران حماية/برامج مكافحة فيروسات على جهاز الكمبيوتر الخاص بك.

  4. الآن يجب أن تكون قادرًا على الوصول إلى الخادم على أي جهاز متصل بالإنترنت باستخدام عنوان IP الذي وجدته في الخطوة الأولى. على سبيل المثال، إذا كان عنوان IP الذي وجدته هو 123.123.123.123 والمنفذ الذي تستخدمه لخادم calibre هو 8080، يصبح العنوان الذي يجب استخدامه على جهازك: http://123.123.123.123:8080.

  5. اختياريًا، استخدم خدمة مثل no-ip لإعداد عنوان سهل التذكر لاستخدامه بدلاً من عنوان IP الذي وجدته في الخطوة الأولى.

ملاحظة

لأقصى قدر من الأمان، يجب عليك أيضًا تمكين HTTPS على خادم المحتوى. يمكنك القيام بذلك إما مباشرة في الخادم عن طريق توفير المسار إلى شهادة HTTPS لاستخدامها في خيارات التكوين المتقدمة لـ الخادم، أو يمكنك إعداد وكيل عكسي كما هو موضح أدناه، لاستخدام إعداد HTTPS موجود.

واجهة الخادم

واجهة الخادم هي نسخة مبسطة من واجهة calibre الرئيسية، محسّنة للاستخدام مع شاشات اللمس. تعرض الشاشة الرئيسية الكتب التي تقرأها حاليًا بالإضافة إلى السماح باختيار مكتبة calibre التي تريد تصفحها. يمنحك الخادم في calibre إمكانية الوصول إلى جميع مكتباتك، وليس مكتبة واحدة فقط، كما كان من قبل.

قائمة الكتب

قائمة كتب الخادم هي شبكة بسيطة من الأغلفة. انقر على غلاف لرؤية البيانات الوصفية المفصلة للكتاب، أو لقراءة الكتاب. إذا كنت تفضل قائمة أكثر تفصيلاً، يمكنك تغيير العرض الافتراضي بالنقر على النقاط الثلاث العمودية في الزاوية اليمنى العليا.

يجب أن يكون فرز وبحث قائمة الكتب مألوفًا لمستخدمي calibre. يمكن الوصول إليهما بالنقر على أيقوناتهما في المنطقة العلوية اليمنى. كلاهما يعملان تمامًا بنفس الطريقة كما هو الحال في برنامج calibre الرئيسي. تسمح صفحة البحث حتى بإنشاء استعلامات بحث بالنقر على المؤلفين/العلامات/إلخ، تمامًا كما يمكنك استخدام متصفح العلامات في البرنامج الرئيسي.

ميزة محبوبة جدًا في البرنامج الرئيسي، المكتبات الافتراضية موجودة في واجهة الخادم أيضًا. انقر على النقاط العمودية الثلاث في الزاوية اليمنى العليا لاختيار مكتبة افتراضية.

عارض الكتب

يمكنك قراءة أي كتاب في مكتبة calibre الخاصة بك بمجرد النقر عليه ثم النقر على زر قراءة. عارض الكتب بسيط للغاية في التشغيل. يمكنك النقر والتمرير لتقليب الصفحات. التمرير لأعلى/لأسفل يتخطى الفصول. النقر على الربع العلوي من الشاشة يمنحك عناصر التحكم التفصيلية وتفضيلات العارض.

إذا تركت خادم المحتوى يعمل، يمكنك حتى فتح نفس الكتاب على أجهزة متعددة وسيتذكر موضع القراءة الأخير. إذا لم يفعل ذلك، يمكنك فرض المزامنة بالنقر في الربع العلوي واختيار مزامنة.

دعم المتصفح

يستخدم خادم calibre الجديد الكثير من ميزات HTML 5 و CSS 3 المتقدمة. وعلى هذا النحو، فإنه يتطلب متصفحًا حديثًا للاستخدام. لقد تم اختباره على Android Chrome و iOS Safari بالإضافة إلى Chrome و Firefox على سطح المكتب.

يهتم الخادم باستخدام الوظائف التي تم توحيدها بالفعل أو هي قيد التوحيد. وبالتالي، إذا لم يعمل حاليًا مع متصفحك المفضل، فمن المحتمل أن يعمل بمجرد أن يتم تحديث هذا المتصفح.

إذا كنت تستخدم متصفحًا قديمًا جدًا أو محدودًا أو لا تحب تشغيل JavaScript، يمكنك استخدام عرض الجوال، ببساطة عن طريق إضافة /mobile إلى عنوان الخادم.

ملاحظة

على نظام iOS، تسمح Apple بمحرك متصفح واحد فقط، لذا فإن Firefox و Chrome وSafari هي كلها في الواقع نفس المتصفح من الداخل. تتطلب واجهة الخادم الجديدة نظام iOS 10.3.2 أو أحدث. على نظام Android، تم اختبار الخادم مع Chrome الإصدار 58 والإصدارات الأحدث.

تمكين الدعم دون اتصال

يحاول صانعو المتصفحات إجبار الناس على استخدام SSL عن طريق تعطيل الميزات المتقدمة في متصفحاتهم لاتصالات HTTP العادية. أحد هذه الضحايا هو ApplicationCache، والذي كان يستخدم في calibre للدعم دون اتصال. ونتيجة لذلك، للأسف، يعمل وضع عدم الاتصال بالإنترنت فقط طالما أبقيت علامة تبويب المتصفح مفتوحة. بالإضافة إلى ذلك، في Firefox على Android، ستحتاج إلى كتابة about:config وإنشاء تفضيل يسمى browser.tabs.useCache وتعيينه على true.

إدارة حسابات المستخدمين من سطر الأوامر فقط

يحتوي برنامج calibre على قسم جيد في التفضيلات للسماح لك بإدارة حسابات المستخدمين للخادم. ومع ذلك، إذا كنت ترغب في تشغيل الخادم المستقل ولا يمكنك تشغيل برنامج calibre الرئيسي على نفس الكمبيوتر/حساب المستخدم، يمكنك أيضًا إدارة المستخدمين باستخدام سطر الأوامر فقط.

يمكنك إدارة حسابات المستخدمين باستخدام خيار --manage-users لبرنامج calibre-server المستقل. لنفترض أنك تريد تخزين قاعدة بيانات المستخدم في المجلد /srv/calibre، ثم تقوم بإنشائها بتشغيل:

calibre-server --userdb /srv/calibre/users.sqlite --manage-users

ما عليك سوى اتباع التعليمات لإنشاء حسابات المستخدمين، وتعيين أذوناتهم، وما إلى ذلك. بمجرد الانتهاء، يمكنك تشغيل الخادم كـ:

calibre-server --userdb /srv/calibre/users.sqlite --enable-auth

سيستخدم حسابات المستخدمين التي أنشأتها في الخطوة السابقة.

دمج خادم محتوى calibre في خوادم أخرى

هنا، سنوضح لك كيفية دمج خادم محتوى calibre في خادم آخر. السبب الأكثر شيوعًا لذلك هو الاستفادة من SSL أو لـ تقديم مكتبة calibre كجزء من موقع أكبر. التقنية الأساسية هي تشغيل خادم calibre وإعداد وكيل عكسي له من الخادم الرئيسي.

الوكيل العكسي هو عندما يقبل خادمك العادي الطلبات الواردة ويمررها إلى خادم calibre. ثم يقرأ الاستجابة من خادم calibre ويعيد توجيهها إلى العميل. هذا يعني أنه يمكنك ببساطة تشغيل خادم calibre كالمعتاد دون محاولة دمجه عن كثب مع خادمك الرئيسي.

استخدام مضيف افتراضي كامل

أبسط تكوين هو تخصيص مضيف افتراضي كامل لخادم calibre. في هذه الحالة، قم بتشغيل خادم calibre كـ:

calibre-server

الآن قم بإعداد المضيف الافتراضي في خادمك الرئيسي، على سبيل المثال، لـ nginx:

http {
    client_max_body_size 64M;  # needed to upload large books
}

server {
    listen [::]:80;
    server_name myserver.example.com;

    location / {
        proxy_pass http://127.0.0.1:8080;
    }
}

أو، لـ Apache:

LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so

<VirtualHost *:80>
    ServerName myserver.example.com
    AllowEncodedSlashes On
    ProxyPreserveHost On
    ProxyPass "/"  "http://localhost:8080/"
</VirtualHost>

استخدام بادئة URL

إذا كنت لا ترغب في تخصيص مضيف افتراضي كامل لـ calibre، يمكنك جعله يستخدم بادئة URL. ابدأ تشغيل خادم calibre كـ:

calibre-server --url-prefix /calibre --port 8080

المعلمة الرئيسية هنا هي --url-prefix /calibre. هذا يجعل خادم المحتوى يقوم بتقديم جميع عناوين URL التي تبدأ بـ /calibre. لرؤية هذا عمليًا، قم بزيارة http://localhost:8080/calibre في متصفحك. يجب أن ترى موقع خادم المحتوى العادي، ولكن الآن سيعمل تحت /calibre.

مع nginx، التكوين المطلوب هو:

http {
    client_max_body_size 64M;  # needed to upload large books
}

proxy_set_header X-Forwarded-For $remote_addr;
location /calibre/ {
    proxy_buffering off;
    proxy_pass http://127.0.0.1:8080$request_uri;
}
location /calibre {
    # we need a trailing slash for the Application Cache to work
    rewrite /calibre /calibre/ permanent;
}

بالنسبة لـ Apache، قم أولاً بتمكين وحدات الوكيل في Apache، عن طريق إضافة ما يلي إلى httpd.conf:

LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so

ستختلف الطريقة الدقيقة لتمكين وحدات الوكيل اعتمادًا على تثبيت Apache الخاص بك. بمجرد تمكين وحدات الوكيل، أضف القواعد التالية إلى httpd.conf (أو إذا كنت تستخدم مضيفات افتراضية إلى ملف التكوين للمضيف الافتراضي المعني):

AllowEncodedSlashes On
RewriteEngine on
RewriteRule ^/calibre/(.*) http://127.0.0.1:8080/calibre/$1 [proxy]
RedirectMatch permanent ^/calibre$ /calibre/

هذا كل شيء، ستتمكن الآن من الوصول إلى خادم محتوى calibre تحت عنوان URL /calibre في خادمك الرئيسي. القواعد المذكورة أعلاه تمرر جميع الطلبات تحت /calibre إلى خادم calibre الذي يعمل على المنفذ 8080 وبفضل خيار --url-prefix أعلاه، يتعامل خادم calibre معها بشفافية.

ملاحظة

عند استخدام وكيل عكسي، يجب أن تخبر خادم محتوى calibre بأن يستمع فقط على المضيف المحلي، باستخدام --listen-on 127.0.0.1. بهذه الطريقة، سيستمع الخادم فقط للاتصالات القادمة من نفس الكمبيوتر، أي من الوكيل العكسي.

ملاحظة

إذا قمت بإعداد SSL لخادمك الرئيسي، يجب أن تخبر خادم calibre باستخدام المصادقة الأساسية بدلاً من مصادقة الملخص، لأنها أسرع. للقيام بذلك، قم بتمرير خيار --auth-mode=basic إلى calibre-server.

إنشاء خدمة لخادم calibre على نظام Linux حديث

يمكنك بسهولة إنشاء خدمة لتشغيل calibre عند الإقلاع على نظام Linux حديث يعتمد على (systemd <https://www.freedesktop.org/wiki/Software/systemd/>). ما عليك سوى إنشاء الملف /etc/systemd/system/calibre-server.service بالمحتويات الموضحة أدناه:

[Unit]
Description=calibre Content server
After=network.target

[Service]
Type=simple
User=mylinuxuser
Group=mylinuxgroup
ExecStart=/opt/calibre/calibre-server "/path/to/calibre library folder"

[Install]
WantedBy=multi-user.target

غيّر mylinuxuser و mylinuxgroup إلى أي مستخدم ومجموعة تريد أن يعمل الخادم بها. يجب أن يكون هذا هو نفس المستخدم والمجموعة اللذين يملكان الملفات في مجلد مكتبة calibre. لاحظ أنه ليس من الجيد عمومًا تشغيل الخادم كجذر. قم أيضًا بتغيير المسار إلى مجلد مكتبة calibre ليناسب نظامك. يمكنك إضافة مكتبات متعددة إذا لزم الأمر. راجع المساعدة لأمر calibre-server.

الآن قم بتشغيل:

sudo systemctl start calibre-server

لبدء تشغيل الخادم. تحقق من حالته باستخدام:

sudo systemctl status calibre-server

لجعله يبدأ عند الإقلاع، قم بتشغيل:

sudo systemctl enable calibre-server

ملاحظة

لا يحتاج خادم calibre إلى خادم X قيد التشغيل، ولكنه يحتاج إلى مكتبات X مثبتة حيث ترتبط بعض المكونات التي يستخدمها بها.

ملاحظة

يدعم خادم calibre أيضًا تفعيل مقبس systemd، لذا يمكنك استخدام ذلك، إذا لزم الأمر، أيضًا.