calibre Innehållsservern

calibre Innehållsservern gör att du kan komma åt dina calibre bibliotek och läsa böcker direkt i en webbläsare på din favorit mobiltelefon eller surfplatta. Som ett resultat behöver du inte installera några dedikerade bokläsnings- /hanteringsappar på din telefon. Använd bara webbläsaren. Servern hämtar och lagrar boken du läser i ett offline cache så att du kan läsa den även när det inte finns någon internetuppkoppling.

För att starta servern klickar du på knappen Anslut/dela och välj Starta Innehållsservern. Det kan hända att du får ett meddelande från datorns brandvägg eller antivirusprogram om det är OK att tillåta tillgång till calibre.exe. Klicka på knappen Tillåt eller OK. Öppna sedan en webbläsare (helst Chrome eller Firefox) i din dator och skriv in följande adress:

Detta öppnar en sida i webbläsaren som visar dina calibre bibliotek, klicka på någon och bläddrar i böckerna i den. Klicka på en bok och den visar alla metadata om boken, tillsammans med knappar för Läs bok and Hämta bok.. Klicka på knappen Läs bok för att börja läsa boken.

Observera

Adressen som används ovan http: //127.0.0.1: 8080 fungerar bara på datorn som kör calibre. För att komma åt servern från andra datorer/telefoner/surfplattor/o.s.v. kommer du att behöva göra lite mer arbete, som beskrivs i nästa avsnitt.

Åtkomst till innehållsservern från andra enheter

Det finns två typer av fjärråtkomst som du normalt behöver. Den första, enklare sorten är från ditt hemnätverk. Om du kör calibre på en dator i ditt hemnätverk och du också har anslutit dina andra enheter till samma hemnätverk, borde du enkelt kunna komma åt servern på de här enheterna.

Åtkomst till servern från enheter i ditt hemnätverk

När du har startat servern i calibre som beskrivits ovan klickar du på knappen Anslut/dela igen. Istället för åtgärden guilabel:Starta innehållservern, bör du se en :guilabel:` Stoppa Innehållsserver`-åtgärd istället. Till höger om denna åtgärd visas en IP-adress och portnummer. Dessa ser ut som en massa siffror åtskilda av perioder. Till exempel:

Stop Content server [192.168.1.5, port 8080]

Dessa siffror berättar vilken adress som ska användas för att ansluta till servern på dina enheter. Efter exemplet ovan blir adressen:

http://192.168.1.5:8080

Den första delen av adressen är alltid http://, nästa delen är IP-adressen, vilken är siffrorna före kommatecken och till sist har vi portnumret som måste läggas till IP-adressen med ett kolon (:). Om du har tur ska det vara allt du behöver och du kommer att se calibre-biblioteken på din enhet. Om inte, läs vidare.

Problemlösning av hemnätverksanslutningen

Om du inte kan komma åt servern från din enhet kan du försöka med följande steg:

  1. Kontrollera att servern körs genom att öppna adressen http://127.0.0.1:8080 i en webbläsare som körs på samma dator som servern.
  2. Kontrollera att din brandvägg/antivirusprogram tillåter anslutningar till din dator på porten 8080 och till calibre-programmet. Det enklaste sättet att eliminera brandväggen/antivirusprogrammet som källan till problem är att tillfälligt stänga av dem och sedan försöka ansluta. Du bör först koppla från internet, innan du slår av brandväggen, för att hålla datorn säker.
  3. Kontrollera att din enhet och dator finns på samma nätverk. Det innebär att de båda ska vara anslutna till samma trådlösa router. I synnerhet bör ingendera använda en mobil- eller ISP tillhandahållen direkt-WiFi-anslutning.
  4. Om du har en icke-standardiserad nätverksinstallation kan det vara att IP-adressen som visas på Anslut/dela-menyn är felaktig. I så fall måste du ta reda på vad den rätta IP-adressen du ska använda är själv. Tyvärr, med tanke på oändliga mångfald av nätverkskonfigurationer är det inte möjligt att ge dig en anvisningar för att göra det.
  5. Om du har ett användarnamn och lösenord, försök först utan det för att se om det orsakar problem. Vissa e-ink enheter har webbläsare som inte hanterar autentisering. Du kan ibland lösa det här genom att inkludera användarnamnet och lösenordet i webbadressen, till exempel: http://användarnamn:lösenord@192.168.1.2:8080.
  6. Om du har fastnat kan du alltid be om hjälp i caliber user forums.

Åtkomst till servern från var som helst på internet

Varning

Innan du gör det bör du aktivera användarnamn/lösenords-skydd i servern, annars kan vem som helst i världen få tillgång till dina böcker. Gå till Inställningar → Delning → Dela via nätet och aktivera alternativet Kräv användarnamn och lösenord för att komma åt Innehållsservern.

Medan de specifika detaljerna om att ställa in Internet-åtkomst varierar beroende på nätverkskonfigurationen och typen av dator du använder, är grundschemat det som följer.

  1. Ta reda på den externa IP-adressen för den dator du ska köra servern på. Du kan göra det genom att besöka webbplatsen What is my IP address med en webbläsare som körs på datorn.
  2. Om datorn ligger bakom en router, aktivera portvidarebefordring på routern för att vidarebefordra porten 8080 (eller den port du väljer att köra calibre Innehållsservern på) till datorn.
  3. Kontrollera att calibre-servern är tillåten genom alla brandväggar/antivirusprogram på din dator.
  4. Nu bör du kunna komma åt servern på vilken internetansluten enhet som helst med hjälp av den IP-adress du hittade i det första steget. Till exempel, om den IP-adressen du hittade var 123.123.123.123 och porten du använder för calibre-servern är 8080, blir adressen som används på din enhet: http://123.123.123.123:8080.
  5. Använd eventuellt en tjänst som no-ip för att konfigurera en enkel att komma ihåg adress att använda istället för den IP-adress du hittade i det första steget.

Observera

För högsta säkerhet bör du också aktivera HTTPS på innehållsservern. Du kan antingen göra det direkt på servern genom att ge sökvägen till HTTPS-certifikatet att använda i avancerade konfigurationsalternativ för servern, eller du kan konfigurera en reverse proxy som beskrivs nedan för att använda en befintlig HTTPS-inställning.

Servergränssnittet

Servergränssnittet är en förenklad version av calibre huvudgränssnittet, optimerat för användning med pekskärmar. På startskärmen visas böcker som du håller på att läsa och du kan välja ett calibre bibliotek att bläddra i. Servern i calibre 3 ger dig tillgång till alla dina bibliotek, inte bara ett enskilt, som tidigare.

Boklistan

Serverns boklista är ett enkelt rutnät av omslag. Tryck på ett omslag för att se detaljerad metadata för en bok eller för att läsa boken. Om du föredrar en mer detaljerad lista kan du ändra standardvyn genom att klicka på de tre vertikala prickarna i övre högra hörnet.

Sortering och sökning i boklistan bör vara en vana för calibre användare. De kan nås genom att klicka på deras ikoner högst upp till höger. De arbetar båda på exakt samma sätt som i calibre huvudprogrammet. På söksidan kan du även konstruera sökförfrågningar genom att klicka på författare/etiketter/o.s.v., precis som du kan med Etikettbläddraren i huvudprogrammet.

En mycket älskad funktion i huvudprogrammet :guilabel:`Virtuella bibliotek’ finns också i servergränssnittet. Klicka på de tre vertikala prickarna i det övre högra hörnet för att välja ett virtuellt bibliotek.

Bokläsaren

Du kan läsa någon bok i ditt calibre bibliotek genom att helt enkelt trycka på den och sedan trycka på knappen Läs bok. Bokläsaren är väldigt enkel att använda. Du kan både trycka och dra för att vända sidor. Upp/ner dragning hoppar mellan kapitel. Genom att trycka på det övre kvartalet av skärmen öppnar du detaljerade kontroller och visningsinställningar.

Om du lämnar innehållsservern igång kan du till och med öppna samma bok på flera enheter och den kommer ihåg din senaste läspositionen. Om det inte kan du tvinga ett synkronisering genom att trycka i övre toppkvartalet och välja Synkronisera.

Observera

Vid första utgåvan är bokläsaren fullt fungerande men saknar några mer avancerade funktioner från calibre huvudvisaren, till exempel poppuppfotnoter, bokmärken och anteckningar i allmänhet. Dessa kommer att läggas till med tiden. Faktum är att webbläsarens läsare är utformad för att så småningom ersätta huvudvisaren, när den är mognar.

Webbläsarstöd

Den nya calibre servern använder mycket av avancerade HTML 5- och CSS 3-funktioner. Som sådan krävs en modern webbläsare för användning. Den har testats på Android Chrome och iOS Safari samt Chrome och Firefox på skrivbordet. Det är känt att den inte fungerar på Internet Explorer och Microsoft Edge (förhoppningsvis kommer Edge att börja fungera när Microsoft kommer runt för att genomföra några saknade standarder).

Servern är försiktig med att använda funktionalitet som antingen har standardiserats eller kommer att standardiseras. Så om den inte fungerar för närvarande med din favorit webbläsare, kommer det förmodligen att göra det så fort webbläsaren har nått ikapp.

Om du använder en särskilt gammal eller begränsad webbläsare eller om du inte gillar att köra JavaScript kan du använda mobil -vyn genom att helt enkelt lägga till /mobile till serveradressen.

Observera

På iOS tillåter Apple endast en enda webbläsarmotor, så Firefox, Chrome och Safari är alla faktiskt samma webbläsare under huven. Det nya servergränssnittet kräver iOS 10.3.2 eller senare. På Android har servern testats med Chrome-version 58 och senare.

Hantera användarkonton endast från kommandoraden

calibre-programmet har en bra sektion i Inställningar så att du kan hantera användarkonton för servern. Om du vill köra den fristående servern och inte kan köra calibre-huvudprogrammet på samma dator/användarkonto kan du också hantera användare som använder bara kommandoraden.

Du kan hantera användarkonton med alternativet -manage-users till det fristående caliber-server-programmet. Antag att du vill lagra användardatabasen i katalogen /srv/calibre, då skapar du den genom att köra:

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

Följ bara anvisningarna för att skapa användarkonton, ställ in deras tillåtelse o.s.v. När du är klar kan du köra servern som:

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

Det kommer att använda användarkonton du skapade i föregående steg.

Integrera calibre-Innehållsservern med andra servrar

Här, kommer vi att visa hur du integrerar calibre Innehållsservern med en annan server. Den vanligaste orsaken för detta är att använda sig av SSL eller att tjäna calibre-biblioteket som en del av en större plats. Den grundläggande tekniken är att köra calibre-servern och konfigurera en reverse proxy till den från huvudservern.

En reverse proxy är när din vanliga server accepterar inkommande förfrågningar och skickar dem till calibre-servern. Den läser sedan svaret från calibre-servern och vidarebefordrar det till klienten. Det betyder att du enkelt kan köra calibre-servern som vanligt utan att försöka integrera den nära din huvudserver.

Använda en fullständig virtuell värd

Den enklaste konfigurationen är att ägna en fullständig virtuell värd till calibre-servern. Kör i så fall calibre-servern som:

calibre-server

Ställ nu in den virtuella värden på din huvudserver, till exempel för nginx:

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

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

Eller för 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>

Använd ett URL-prefix

Om du inte vill ägna en fullständig virtuell värd till calibre kan du få den att använda ett URL-prefix. Starta calibre-servern som:

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

Nyckelparametern här är --url-prefix /calibre. Detta gör att Innehållsservern kan betjäna alla webbadresser som prefixas av /calibre. För att se detta i verkligheten, besök http://localhost:8080/calibre i din webbläsare. Du borde se den normala innehållsserverwebbplatsen, men nu kommer den att köras under /calibre.

Med Nginx, är konfigurationen som fodras:

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

För Apache, aktivera först proxymodulerna i Apache genom att lägga till följande till httpd.conf:

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

Den exakta tekniken för att aktivera proxymoduler varierar beroende på din Apache-installation. När du aktiverar proxymodulerna, lägg till följande regler till httpd.conf (eller om du använder virtuella värdar till conf-filen för den virtuella värden i fråga):

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

Det är allt, du kommer nu att kunna komma åt calibre Innehållsservern under /calibre-webbadressen i din huvudserver. Ovanstående regler skickar alla förfrågningar under /calibre till calibre-servern som körs på port 8080 och tack vare alternativet --url-prefix ovan hanterar calibre-servern dem transparent.

Observera

När du använder en reverse proxy ska du berätta att calibre innehållsservern bara lyssnar på localhost, genom att använda --listen-on 127.0.0.1. På så sätt lyssnar servern bara på anslutningar som kommer från samma dator, d.v.s. från reverse proxyn.

Observera

Om du har ställt in SSL för din huvudserver, bör du berätta för calibre-servern att använda grundläggande autentisering istället för digest autentisering, eftersom den är snabbare. För att göra det, skicka alternativet --auth-mode=basic till calibre-server.

Skapa en tjänst för calibre-servern på ett modernt Linux-system

Du kan enkelt skapa en tjänst för att köra calibre vid start på ett modernt system (systemd <https://www.freedesktop.org/wiki/Software/systemd/> _) baserat på Linux. Skapa bara filen /etc/systemd/system/calibre-server.service med innehållet som visas nedan:

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

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

[Install]
WantedBy=multi-user.target

Ändra mylinuxuser och mylinuxgroup till vilken användare och grupp du vill att servern ska köra som. Detta borde vara samma användare och grupp som äger filerna i calibre-bibliotekets katalog. Observera att det i allmänhet inte är en bra idé att köra servern som root. Ändra också sökvägen till calibre-bibliotekskatalogen som passar ditt system. Du kan lägga till flera bibliotek om det behövs. Se hjälpen för calibre-server-kommandot.

Kör nu:

sudo systemctl start calibre-server

för att starta servern. Kontrollera dess status med:

sudo systemctl status calibre-server

För att den ska starta vid uppstart, kör:

sudo systemctl enable calibre-server

Observera

calibre-servern behöver inte en X-server som körs, men den behöver X-biblioteken installerade eftersom vissa komponenter använder dem för att länka mot.

Observera

calibre servern stöder också systemd-socketaktivering, så du kan också använda det, om det behövs.