Server s obsahem Calibre

Server s obsahem Calibre vám umožňuje přístup k vašim knihovnám Calibre a čtení knih přímo v prohlížeči na vašem oblíbeném mobilním telefonu nebo tabletu. Následkem toho nemusíte do telefonu instalovat žádné speciální aplikace pro čtení a správu knih. Stačí použít prohlížeč. Server stahuje a ukládá knihu, kterou čtete, do off-line mezipaměti, takže ji můžete číst, i když nejste připojeni k internetu.

Pro spuštění serveru klikněte na tlačítko Připojit nebo sdílet a zvolte Spustit Server s obsahem. Z brány firewall počítače nebo antivirového programu se může zobrazit zpráva s dotazem, zda je v pořádku povolit přístup k souboru calibre.exe. Klikněte na tlačítko Povolit nebo OK. Pak v počítači otevřete prohlížeč (nejlépe Chrome nebo Firefox) a zadejte následující adresu:

http://127.0.0.1:8080

This will open a page in the browser showing you your calibre libraries, click on any one and browse the books in it. Click on a book, and it will show you all the metadata about the book, along with buttons to Read and Download the book. Click the Read button to start reading the book.

Poznámka

Výše uvedená adresa http: //127.0.0.1: 8080 bude fungovat pouze na počítači, kde je spuštěno Calibre. Pro přístup k serveru z jiných počítačů, telefonů, tabletů atd. budete muset udělat trochu více práce, jak je popsáno v následující části.

Přístup k Serveru s obsahem z jiných zařízení

Existují dva typy přístupu ze vzdáleného zařízení, které budete obvykle potřebovat. První, jednodušší typ, je z vaší domácí sítě. Pokud používáte Calibre na počítači ve vaší domácí síti a vaše ostatní zařízení jsou také připojena ke stejné domácí síti, měl by být přístup k serveru na těchto zařízeních snadný.

Přístup k serveru ze zařízení ve vaší domácí síti

Po spuštění serveru v Calibre, jak je popsáno výše, klikněte znovu na tlačítko Připojit nebo sdílet. Namísto akce Spustit Server s obsahem byste měli vidět akci Zastavit Server s obsahem. Vpravo od této akce bude uvedena IP adresa a číslo portu. Vypadají jako mnoho čísel oddělených tečkami. Například:

Stop Content server [192.168.1.5, port 8080]

Tato čísla vám sdělují, jakou adresu použít pro připojení k serveru ve vašem zařízení. Podle výše uvedeného příkladu bude adresa:

http://192.168.1.5:8080

První část adresy je vždy http:// další část je adresa IP, což jsou čísla před čárkou a nakonec máme číslo portu, které musí být přidáno k IP adrese s dvojtečkou (:). Pokud máte štěstí, mělo by to být vše, co potřebujete, a můžete se dívat na knihovny Calibre na svém zařízení. Pokud ne, čtěte dál.

Odstraňování problémů s připojením v domácí síti

Pokud se vám nedaří připojit se k serveru z vašeho zařízení, zkuste následující kroky:

  1. Zkuste, zda je server spuštěn, otevřením adresy http://127.0.0.1:8080 v prohlížeči spuštěném na stejném počítači jako server.

  2. Zkontrolujte, zda vaše brána firewall nebo antivirus umožňují připojení k vašemu počítači na portu 8080 a k programu Calibre. Nejjednodušší způsob, jak odstranit firewall nebo antivirus jako zdroj problémů, je dočasně je oba vypnout a pak se zkusit připojit. Před vypnutím brány firewall byste se měli nejprve odpojit od internetu, aby byl váš počítač v bezpečí.

  3. Zkontrolujte, zda jsou vaše zařízení a počítač ve stejné síti. To znamená, že by oba měly být připojeny ke stejnému bezdrátovému směrovači. Zvláště nesmí být používán mobilní připojení nebo poskytovatel internetového připojení poskytující přímé WiFi připojení.

  4. Pokud máte nestandardní nastavení sítě, může se stát, že je adresa IP uvedená v nabídce Připojit nebo sdílet nesprávná. V takovém případě budete muset sami zjistit, jaká je správná adresa IP. Bohužel, vzhledem k nekonečné rozmanitosti možných síťových konfigurací, není možné vám poskytnout přesný návod, jak to udělat.

  5. Pokud máte nastaveno uživatelské jméno a heslo, zkuste to nejdříve bez nich, abyste zjistili, zda to způsobuje problémy. Některá zařízení s elektronickým inkoustem mají prohlížeče, které nezvládají ověřování. Někdy můžete tento problém vyřešit zahrnutím uživatelského jména a hesla do adresy URL, například: http://uzivatelskejmeno:heslo@192.168.1.2:8080.

  6. Pokud si nebudete vědět rady, vždy můžete požádat o pomoc v calibre user forums.

Přístup k serveru odkudkoliv z internetu

Varování

Než to uděláte, měli byste na serveru zapnout ochranu uživatelským jménem a heslem, jinak bude mít k vašim knihám přístup kdokoliv na světě. Přejděte na Předvolby → Sdílení → Sdílení po síti a povolte volbu Vyžadovat uživatelské jméno a heslo pro přístup k serveru s obsahem.

Zatímco se konkrétní podrobnosti o nastavení přístupu k internetu liší v závislosti na konfiguraci sítě a typu používaného počítače, základní schéma je následující.

  1. Zjistěte externí IP adresu počítače, na kterém chcete spustit server. Můžete to udělat tak, že v prohlížeči spuštěném na tomto počítači navštívíte stránku What is my IP address.

  2. Pokud je počítač za směrovačem, povolte přesměrování portů na směrovači, aby přesměrovával port 8080 (nebo jakýkoliv port, na kterém se rozhodnete spustit Server s obsahem Calibre) do počítače.

  3. Ujistěte se, že je server Calibre povolen ve všech firewallech a antivirových programech ve vašem počítači.

  4. Nyní byste měli mít možnost přistupovat k serveru na jakémkoli zařízení připojeném k internetu pomocí adresy IP, kterou jste zjistili v prvním kroku. Pokud je například adresa IP, kterou jste zjistili, 123.123.123.123 a port, který používáte pro server Calibre, je 8080, adresa, kterou použijete ve svém zařízení, bude: http://123.123.123.123:8080.

  5. Volitelně použijte službu, jako je no-ip, abyste nastavili snadno zapamatovatelnou adresu, kterou chcete použít namísto adresy IP, kterou jste zjistili v prvním kroku.

Poznámka

Pro maximální zabezpečení byste také měli na Serveru s obsahem povolit protokol HTTPS. Můžete tak učinit buď přímo na serveru poskytnutím cesty k certifikátu HTTPS, který se má použít, v rozšířených volbách konfigurace pro server, nebo můžete nastavit reverzní proxy, jak je popsáno níže, pro použití existujícího nastavení HTTPS.

Rozhraní serveru

Rozhraní serveru je zjednodušená verze hlavního rozhraní Calibre, optimalizovaná pro použití s dotykovými obrazovkami. Na domovské obrazovce se zobrazují knihy, které právě čtete, a také možnost vybrat knihovnu Calibre, kterou chcete procházet. Server v Calibre vám poskytuje přístup ke všem vašim knihovnám, ne jen k jedné jako dříve.

Seznam knih

Seznam knih na serveru je jednoduchá mřížka obálek. Klepněte na obálku pro zobrazení podrobných metadat knihy nebo přečtení knihy. Pokud dáváte přednost podrobnějšímu seznamu, můžete změnit výchozí zobrazení kliknutím na tři svislé tečky v pravém horním rohu.

Řazení a vyhledávání v seznamu knih by mělo být uživatelům Calibre známé. Jsou přístupné kliknutím na jejich ikony v pravé horní oblasti. Obě pracují přesně stejně jako v hlavním programu Calibre. Stránka vyhledávání vám dokonce umožňuje vytvářet vyhledávací dotazy kliknutím na autory, štítky atd., stejně jako pomocí Prohlížeče štítků v hlavním programu.

V rozhraní serveru je také přítomna velmi oblíbená funkce hlavního programu Virtuální knihovny. Klikněte na tři svislé tečky v pravém horním rohu pro výběr Virtuální knihovny.

Čtečka knih

You can read any book in your calibre library by simply tapping on it and then tapping the Read button. The book reader is very simple to operate. You can both tap and swipe to turn pages. Swiping up/down skips between chapters. Tapping the top quarter of the screen gets you the detailed controls and viewer preferences.

Pokud ponecháte Server s obsahem spuštěný, můžete dokonce otevřít stejnou knihu na více zařízeních a bude si pamatovat poslední pozici čtení. Pokud ne, můžete vynutit synchronizaci klepnutím na v horní čtvrtinu obrazovky a výběrem Synchronizovat.

Podpora prohlížečů

Nový server Calibre využívá mnoho pokročilých funkcí HTML 5 a CSS 3. Proto vyžaduje použití aktuálního prohlížeče. Byl testován na Chrome pro Android a Safari pro iOS, stejně jako Chrome a Firefox pro počítač.

Server dbá na to, aby používal funkce, které buď již byly standardizovány, nebo jsou na cestě ke standardizaci. Pokud tedy v současné době nefunguje s vaším oblíbeným prohlížečem, pravděpodobně jednou bude, až ten prohlížeč dožene ztrátu.

Pokud používáte obzvláště zastaralý nebo omezený prohlížeč nebo nechcete spouštět JavaScript, můžete použít mobilní zobrazení jednoduše přidáním /mobile k adrese serveru.

Poznámka

Apple na iOS umožňuje pouze jeden modul prohlížeče, takže Firefox, Chrome a Safari jsou vlastně pod kapotou stejný prohlížeč. Nové rozhraní serveru vyžaduje iOS 10.3.2 nebo novější. Na Androidu byl server testován s Chrome verze 58 a novější.

Povolení offline podpory

Browser makers have been trying to force people to use SSL by disabling advanced features in their browsers for plain HTTP connections. One such casualty is ApplicationCache, which was what was used in calibre for offline support. As a result now-a-days sadly, offline mode works only as long as you keep the browser tab open. In addition, in Firefox on Android, you will need to type about:config and create a preference called browser.tabs.useCache and set it to true.

Správa uživatelských účtů pouze z příkazového řádku

Program Calibre má v Předvolby pěknou sekci, která vám umožní spravovat uživatelské účty pro server. Pokud však chcete spustit samostatný server a nemůžete spustit hlavní program Calibre na stejném počítači nebo pod stejným uživatelským účtem, můžete také spravovat uživatele pouze pomocí příkazového řádku.

Uživatelské účty můžete spravovat pomocí volby --manage-users v samostatném programu calibre-server. Předpokládejme, že chcete uložit databázi uživatelů do složky /srv/calibre, pak ji vytvoříte spuštěním:

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

Postupujte podle pokynů a vytvořte uživatelské účty, nastavte jejich oprávnění atd. Po dokončení můžete spustit server takto:

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

Použije uživatelské účty, které jste vytvořili v předchozím kroku.

Integrace Serveru s obsahem Calibre do jiných serverů

Zde vám ukážeme, jak integrovat Server s obsahem Calibre do jiného serveru. Nejčastějším důvodem je využití SSL nebo aby knihovna Calibre sloužila jako součást větší stránky. Základní technikou je spuštění serveru Calibre a nastavení reverzní proxy tomuto serveru z hlavního serveru.

Reverzní proxy je, když váš normální server přijímá příchozí požadavky a předává je serveru Calibre. Pak přečte odpověď ze serveru Calibre a předá ji klientovi. To znamená, že můžete jednoduše spustit server Calibre, aniž byste se ho snažili integrovat s hlavním serverem.

Použití plně virtuálního hostitele

Nejjednodušší konfigurací je vyhradit pro server Calibre plně virtuálnho hostitele. V takovém případě spusťte server Calibre takto:

calibre-server

Nyní nastavte virtuálního hostitele na hlavním serveru, například pro 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;
    }
}

Nebo pro 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>

Používání předpony adresy URL

Pokud nechcete pro Calibre vyhradit plně virtuálního hostitele, můžete použít předponu adresy URL. Spusťte server Calibre takto:

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

Klíčovým parametrem je zde --url-prefix /calibre. Způsobí, že Server s obsahem bude sloužit všem adresám URL s předponou /calibre. Abyste to viděli v akci, navštivte ve svém prohlížeči adresu http://localhost:8080/calibre. Měli byste vidět normální webovou stránku Serveru s obsahem, ale nyní bude spuštěna pod /calibre.

S nginx je vyžadována konfigurace:

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;
}

Pro Apache nejdříve povolte moduly proxy v Apache přidáním následujícího textu do httpd.conf:

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

Přesná technika pro povolení modulů proxy se bude lišit v závislosti na instalaci Apache. Jakmile povolíte moduly proxy, přidejte následující pravidla do httpd.conf (nebo pokud používáte virtuální hostitele, tak do konfiguračního souboru pro daného virtuálního hostitele):

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

To je vše, nyní budete mít přístup k Serveru s obsahem Calibre pro URL /calibre na vašem hlavním serveru. Výše uvedená pravidla předávají všechny požadavky pod /calibre serveru Calibre běžícímu na portu 8080 a díky výše uvedené volbě --url-prefix je server Calibre zpracovává transparentně.

Poznámka

Pokud používáte reverzní proxy, měli byste říct Serveru s obsahem Calibre, aby naslouchal pouze na localhost pomocí --listen-on 127.0.0.1. Tímto způsobem bude server naslouchat pouze spojením přicházejícím ze stejného počítače, tj. z reverzní proxy.

Poznámka

Pokud máte pro váš hlavní server nastaveno SSL, měli byste říci serveru Calibre, aby používal základní ověřování namísto ověřování algoritmem digest, protože je rychlejší. Abyste to udělali, předejte volbu --auth-mode=basic pro calibre-server.

Vytváření služby pro server Calibre na moderním systému Linux

Můžete snadno vytvořit službu, která spustí Calibre při spuštění moderního systému založeného na Linuxu (systemd). Stačí vytvořit soubor /etc/systemd/system/calibre-server.service s níže zobrazeným obsahem:

[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

Změňte mylinuxuser a mylinuxgroup na libovolného uživatele a skupinu, kterou má server spouštět. Měli by to být stejný uživatel a skupina, která vlastní soubory ve složce knihovny Calibre. Pamatujte, že není obecně dobrý nápad spouštět server jako root. Také změňte cestu ke složce knihovny Calibre, aby vyhovovala vašemu systému. V případě potřeby můžete přidat více knihoven. Viz nápověda k příkazu calibre-server.

Nyní spusťte:

sudo systemctl start calibre-server

pro spuštění serveru. Zkontrolujte jeho stav pomocí:

sudo systemctl status calibre-server

Aby se spustil při spouštění, spusťte:

sudo systemctl enable calibre-server

Poznámka

Server Calibre nepotřebuje spuštěný server X, ale potřebuje mít nainstalované knihovny X, protože některé komponenty, které používá, na ně odkazují.

Poznámka

Server Calibre také podporuje aktivaci systemd socketu, takže ji můžete použít, pokud je to potřeba.