Coppermine Photo Gallery v1.5.x: Dokumentation och Manual

Innehållsförteckning

Sätta behörigheter

Alla PHP script som är tänkta att köras på en webbserver behöver läs och exekvera rättigheter på servern. Följaktligen behöver alla Coppermine-filer dessa behörigheter.
Dessutom behöver Coppermine skriv åtkomst till ett antal filer och mappar på webbservern för att åstadkomma följande:

Som standar är filer och mappar på en webbserver inte skrivbara, så du behöver troligtvis ändra behörigheterna före installationen, av ovan nämnda skäl. Det är verkligen obligatoriskt att du sätter/ändrar (CHMOD) behörigheter - annars får du problem förr eller senare.

För att kunna sätta behörigheterna rätt behöver du förstå hur de fungerar: det finns read (läs), write (skriv) och execute (exekvera) behörigheter (förkortat med rwx) för varje mapp och fil. Behörigheterna till en huvudmapp kan ärvas till mapparna och filerna i den men det är möjligt att göra inställningar så att behörigheterna inte ärvs till underliggande mappar och där i liggande filer.

Om du inte kan gissa hur du sätter behörigheterna korrekt, fråga supporten på ditt webbhotell. Det är ingen mening med att be om hjälp angående detta på Coppermines supportforum - vi kan inte berätta för dig vilken nivå av behörigheter man behöver sätta på just din webbserver. Bara ditt webbhotell kan svara på den frågan.

Behörigheter på olika typer av webbservrar

Det finns skillnader mellan olika operativsystem som används på webbservrar. Därför finns det flera olika tillvägagångssätt. Eftersom Coppermine har gjorts för att köras på många olika webbserveruppsättningar, har vi lagt till lite generella instruktioner. Det som har lite mer kännedom tycker kanske att dessa instruktioner är lite väl generaliserade och saknar en del detaljer.

Notera: det är inte din lokala dator som har betydelse behörighetsmässigt utan snarare det operativsystem som används på din webbserver. Om du inte är säker på vilket operativsystem som körs på din webbserver, försök med CHMOD instruktionerna först - de flesta webbservrar kör en version av Unix/Linux.

Här en sammanfattning på hur behörigheter fungerar på en del webbservrar:

Apache på Unix/Linux (CHMOD)

Apache på Windows

Du måste förstå att det inte finns något sådant som CHMOD på ett Windows operativsystem - detta kommando finns bara på en Unix/Linux, även om din FTP applikation visar ett CHMOD alternativ. Om du försöker använda CHMOD på Windows, kommer kommandot bara att ignoreras och ingenting händer. Men det finns behörigheter på Windows också.

Apache webserver service körs under en specifik användare - om du har full behörighet till servern, se på services control för att ta reda på vilken det är. Om du inte kan det, be ditt webbhotell.

Som en tillfällig lösning, sätt behörigheterna på mapp- och filnivå som föreslås i avsnittet IIS på Windows, men inte för IUSR (som bara finns på IIS), utan för alla "everyone". Att tillåta alla att ha läs, skriv och exekveringsrättigheter kan vara en säkerhetsrisk, så det rekommenderas inte alls.

IIS på Windows

Förutsättningar: du behöver alla administratörsrättigheter på din server för att kunna göra det här. Om du inte har din egen webbserver, har ditt webbhotell troligtvis satt upp ett webb-baserat gränssnitt för att låta dig ändra behörigheter. Om du inte vet, fråga ditt webbhotell.

Dialogrutan kan skilja sig åt beroende på vilken Windowsversion du har:

Du måste förstå att det inte finns något sådant som CHMOD på ett Windows operativsystem - detta kommando finns bara på en Unix/Linux, även om din FTP applikation visar ett CHMOD alternativ. Om du försöker använda CHMOD på Windows, kommer kommandot bara att ignoreras och ingenting händer. Men det finns behörigheter på Windows också.

Be om hjälp med behörighetsproblem

De flesta användare med Windows bakgrund (eller som inte har någon aning om hur behörigheter fungerar) ställer ofta frågor på supportforumet "Varför måste det vara så komplicerat? Varför skapar ni inte bara ett script som hanterar alla dessa komplicerade behörigheter åt mig?". Svaret är helt enkelt: därför att vi inte kan.

Coppermine har gjorts för att fungera på ett antal olika plattformar och operativsystem. De behörigheter du behöver sätta är en del av hur operativsystemet på din webbserver fungerar - de är inte en del av Coppermine självt. Ett script kan inte sätta behörigheter till sig självt om det inte har behörigheter att göra det.

Tänk på det som om det hade samma struktur som en armé: en soldat som har låg rang kan inte befordra sig själv till general; bara en officer med högre rang kan befordra soldater med lägre rang. De skulle aldrig befordra dem till generaler heller, utan bara ge dem den rang de behöver för att kunna göra sitt jobb (t.ex. befordra dem från vanlig menig till korpral).

Eftersom webbservrar är olika, kan vi inte ge dig en enkel, lättbegriplig instruktion som "CHMOD allting till 755 så är du klar sedan". Även om det skulle vara fallet för många som har delat webbhotell kanske det inte gäller dig. På en del servrar kanske det inte räcker. På en del andra kan det vara en säkerhetsrisk. På en del andra kanske det inte går alls eftersom det inte finns något sådant kommando där.

En del supportrar svarar motvilligt på samma frågor om behörigheter som ställs om och om igen. Om du ställer frågor relaterade till behörigheter på Coppermines supportforum, och det tydligt framgår att du inte läst dokumentationen (åtminstone den dels som behandlar behörigheter), får du förmodligen ett snarstucket svar eller inget alls. Tänk gärna två gånger och läs dokumentationen noggrant. Det finns bara lite andra kan göra för att hjälpa dig med detta. Om du verkligen kör fast är det bättre att du ber ditt webbhotell om hjälp.

Behörigheter på mappnivå

Som ovan sagts, behöver Coppermine olika nivåer på behörigheter på en del av sina undermappar. Alla mappar och filer inom Coppermine mappen behöver vara läsbara och behöver exekveringsrättigheter också.

Dessutom behövs, skriv rättigheter för: