Gå til innholdet

Cookie-innstillinger

Velg hvilke typer cookies du tillater. Du kan når som helst endre valget via Cookie-innstillinger nederst på hver side. Personvernerklæring

Nødvendige

Alltid på

Trengs for å logge inn, beholde handlekurven og huske valgene dine. Disse er alltid på.

Hvilke cookies?
  • weboke_sessie, weboke_klant, weboke_remember: økten din og at du forblir innlogget
  • weboke_basket: handlekurven din
  • wkBtwIncl: visning av priser med eller uten mva.
  • wok_cookies: cookievalget ditt, 12 måneder

Måler hvilken annonse som fører til et besøk eller en bestilling, slik at vi ikke betaler for annonser som ikke gir noe.

Hvilke cookies?
  • Google Ads via Google Tag Manager (_gcl_au, _gcl_aw), opptil 90 dager
  • OpenAI Ads, annonser i ChatGPT
  • wok_aff: hvilken partner som henviste deg til oss (partnerprogram), 60 dager

4,6

Land og språk

Hvert land har sin egen nettside, med priser og mva. for det landet.

Vis

Digitale og virtuelle produkter

Modul 3: Produkter · Lesetid: 11 minutter

Læringsmål: Etter denne leksjonen kan du selge digitale og virtuelle produkter trygt: du velger en sikker nedlastingsmetode, skjermer nedlastingsmappen, setter grenser og håndterer angreretten for digitalt innhold riktig.

Nøkkelbegreper: virtuelt produkt, nedlastbart produkt, nedlastingslenke, nedlastingsgrense, utløpsdato, nedlastingsmetode (Tving nedlastinger, X-Accel-Redirect/X-Sendfile, Kun videresending), woocommerce_uploads, .htaccess, nginx, godkjente nedlastingsmapper (Approved download directories), tilgang etter betaling, digitalt innhold, uttrykkelig samtykke, avkall på angreretten

Virtuell og nedlastbar: to forskjellige avkrysningsbokser

På et enkelt produkt eller en variant ser du to avkrysningsbokser. De ligner på hverandre, men gjør forskjellige ting:

  • Virtuell (Virtual) betyr: ingenting sendes. WooCommerce beregner ikke frakt og ber ikke om leveringsadresse i kassen (hvis alt i handlekurven er virtuelt). Tenk på en tesmaking på stedet, et gavekort du sender på e-post, eller en nettbasert workshop.
  • Nedlastbar (Downloadable) betyr: etter betalingen får kunden én eller flere filer. WooCommerce lager en nedlastingslenke per kunde og viser den i bekreftelsese-posten og under Min konto > Nedlastinger.

En digital oppskriftsbok som pdf er som regel begge deler: ingenting sendes i posten, og det finnes en fil. En trykt oppskriftsbok med en gratis pdf er nedlastbar, men ikke virtuell: boken sendes jo i posten.

Theehuis Example selger «Receptenboek Thee en Taart» som pdf for € 9,95 (≈ 105 kr). Avkrysningsbokser: virtuell og nedlastbar.

Slik fungerer en nedlasting, og hvorfor metoden betyr noe

Laster du opp en fil på et nedlastbart produkt, legger WooCommerce den i mappen wp-content/uploads/woocommerce_uploads/. Som standard legger den til en tilfeldig tegnrekke bak filnavnet (innstillingen «Append a unique string to filename for security», som er på som standard). Kunden får aldri den adressen, men en lenke til butikken din med en bestillingsnøkkel og en nedlastingskode. WooCommerce sjekker ved hvert klikk: hører denne nedlastingen til en betalt bestilling, er grensen ikke nådd, har den ikke utløpt? Først da får kunden filen.

Hvordan filen deretter kommer frem til kunden, velger du under WooCommerce > Innstillinger > Produkter > Nedlastbare produkter, ved nedlastingsmetode (File download method):

MetodeSlik fungerer detSikkerhet
Tving nedlastinger (Force downloads, standard)PHP leser filen og sender den selv videreDen ekte adressen forblir skjult. Store filer kan på enkelte servere stoppe opp eller treffe tidsgrensen i PHP
X-Accel-Redirect/X-SendfilePHP sjekker, webserveren sender filenLike sikkert og bedre for store filer; webserveren må støtte det (på Apache trengs modulen mod_xsendfile, nginx har X-Accel-Redirect). Spør leverandøren av webhotellet ditt
Kun videresending (Redirect only)WooCommerce sender kunden videre til den ekte filadressenUsikkert: den som har adressen, kan dele den, og filen kan hentes uten å kjøpe. WooCommerce kaller det selv «Insecure»

Velg altså Tving nedlastinger eller X-Sendfile. Videresending er bare en nødløsning, og innstillingen «Allow using redirect mode (insecure) as a last resort» lar WooCommerce falle tilbake på videresending hvis den andre metoden feiler; la den være av med mindre du vet hvorfor.

Skjerme mappen

Med Tving nedlastinger eller X-Sendfile må mappen woocommerce_uploads være stengt for vanlige besøkende. Ellers kan noen som gjetter filnavnet eller henter det fra en lekket lenke, laste ned filen direkte. WooCommerce legger derfor to filer i den mappen ved installasjonen:

  • en tom index.html, slik at mappen ikke viser en liste over filer;
  • en .htaccess med deny from all (ved metoden Kun videresending: Options -Indexes).

Den .htaccess-filen virker på Apache og LiteSpeed (som hos WebOké og mange andre delte webhotell). På nginx leser ikke webserveren .htaccess. Der må det stå en regel i serverkonfigurasjonen som blokkerer mappen. På et administrert nginx-webhotell ordner leverandøren det noen ganger; på en egen VPS må du gjøre det selv. WooCommerce sjekker dette selv og viser en melding i administrasjonen (og i Nettstedshelse) hvis mappen ikke ser ut til å være beskyttet.

Noen ting du bør passe på:

  • En tom 200 er ikke noe bevis. Ber du om mappen og ser en tom side, kan det være den tomme index.html, mens selve filene står åpne. Test derfor også én fil (oppgaven gjør det).
  • Filer utenfra. Du kan også oppgi en lenke til en fil et annet sted på et produkt. Til det har WooCommerce listen godkjente nedlastingsmapper (Approved download directories): bare filer fra disse mappene eller adressene kan brukes som nedlasting. Slik kan ingen med administratorrettigheter på et produkt ved et uhell eller med vilje tilby en vilkårlig fil fra serveren som nedlasting. Hold listen kort.
  • Sikkerhetskopier og staging. Mappen blir med i sikkerhetskopien din. I et stagingmiljø ligger altså også de betalte filene dine: skjerm stagingmiljøet (leksjon 7.3).

Grenser og tilgang

Per nedlastbart produkt eller per variant stiller du inn:

  • Nedlastingsgrense (Download limit): hvor mange ganger kunden kan laste ned. Tomt betyr ubegrenset. En grense på for eksempel 5 begrenser deling, men gir klager når noen kjøper en ny bærbar PC. Velg noe rimelig og hjelp kunder som spør.
  • Utløpsdato (Download expiry): etter hvor mange dager lenken slutter å virke.

Generelle innstillinger under Nedlastbare produkter:

  • Nedlastinger krever innlogging (Downloads require login), av som standard. På betyr at gjester ikke kan laste ned noe; slå det bare på hvis du også krever konto.
  • Tilgang etter betaling (Grant access to downloadable products after payment), på som standard: kunden kan laste ned så snart bestillingen har statusen Pågående, altså rett etter en vellykket betaling. Er det av, først etter Fullført.

Angrerett for digitalt innhold

For en vanlig tekanne har kunden 14 dagers angrefrist (leksjon 5.2). For en nedlasting er det vanskelig: den som har pdf-en, har den, også etter at kjøpet er angret. Derfor finnes det et unntak, men bare på visse vilkår. I EU står det i artikkel 16 i direktiv 2011/83/EU; i Nederland i artikkel 6:230p bokstav g i den nederlandske sivilloven (Burgerlijk Wetboek, BW). Det er ingen angrerett for digitalt innhold som ikke leveres på et fysisk medium, hvis:

  1. leveringen har startet med forbrukerens uttrykkelige forhåndssamtykke;
  2. forbrukeren har erklært at han dermed gir avkall på angreretten; og
  3. du har gitt en bekreftelse på dette (i bekreftelsen av avtalen, på et varig medium som bestillingse-posten).

Mangler ett av disse tre, beholder kunden angreretten, også om han allerede har lastet ned. I Belgia og Tyskland gjelder den samme EU-regelen gjennom landets egen lov (se leksjon 5.2). Norge er ikke med i EU, men i EØS: forbrukerrettighetsdirektivet gjelder gjennom norsk lov, her angrerettloven med 14 dagers angrerett.

WooCommerce ordner ikke dette av seg selv. Du trenger:

  • en obligatorisk avkrysningsboks i kassen, bare når det ligger digitalt innhold i handlekurven, med en tekst som «Jeg godtar at leveringen starter med en gang, og jeg vet at jeg dermed mister angreretten»;
  • den samme teksten som bekreftelse i bestillingse-posten for disse produktene;
  • riktig setning i informasjonen din om angrerett om at dette gjelder nedlastinger.

Det finnes utvidelser som legger til en slik avkrysningsboks; kasseblokken har også muligheter for ekstra felt. Vurder dem som enhver annen utvidelse. En avkrysningsboks som er forhåndsavkrysset, teller ikke som uttrykkelig samtykke (leksjon 5.4).

Legg merke til forskjellen fra virtuelle tjenester, som en workshop på en bestemt dato. Der gjelder reglene for tjenester, med andre unntak. Les leksjon 5.2.

Sammendrag

  • Virtuell = ingenting sendes; nedlastbar = filer etter betaling. En pdf er som regel begge deler.
  • Velg Tving nedlastinger eller X-Accel-Redirect/X-Sendfile; Kun videresending er usikkert.
  • Mappen woocommerce_uploads må være stengt: .htaccess på Apache og LiteSpeed, en serverregel på nginx. Test en ekte fil, ikke bare mappen.
  • Hold listen over godkjente nedlastingsmapper kort og sett rimelige grenser.
  • Ingen angrerett for nedlastinger bare med uttrykkelig samtykke, avkall på retten og en bekreftelse; WooCommerce gjør ikke dette av seg selv. I Norge gjelder angrerettloven, som bygger på det samme direktivet gjennom EØS.

Quiz

1. Theehuis Example selger en trykt oppskriftsbok med en gratis pdf. Hvilke avkrysningsbokser slår du på?



2. Hvorfor er nedlastingsmetoden «Kun videresending» usikker?



3. Butikken din kjører på nginx. Er .htaccess-filen fra WooCommerce i woocommerce_uploads da nok?



4. En kunde kjøper en pdf, laster den ned med en gang og angrer kjøpet to dager senere. I kassen var det ingen avkrysningsboks om tap av angreretten. Hva gjelder?



5. Hva brukes listen «godkjente nedlastingsmapper» til?



Oppgave

Oppgave A3.3: Er nedlastingene dine skjermet? Denne oppgaven ber om stier som ikke er lenket, og virker derfor bare for din egen butikk. Først viser du at domenet er ditt: du legger inn en TXT-post _weboke-cursus.<ditt domene> med koden du får, eller du legger ut en fil /.well-known/weboke-cursus-<code>.txt med koden i. Fyll deretter inn adressen til butikken din og, hvis du vil, stien til én nedlastingsfil slik WooCommerce viser den på produktet (den begynner med /wp-content/uploads/woocommerce_uploads/). Programmet ber om mappen (uten å følge videresendinger, bare begynnelsen) og, hvis du fylte inn en sti, én gang om kodehodene til den filen. Grønt hvis mappen gir 401, 403 eller 404, eller en side uten liste over filer, og filen gir 401, 403 eller 404. Oransje hvis du ikke fylte inn en fil: da er bare mappen sjekket, og en tom side sier ikke nok. Rødt hvis mappen viser en liste over filer, eller hvis filen kan lastes ned rett frem (200): da kan alle med adressen hente den uten å kjøpe. Programmet lagrer bare statuskodene, aldri filen.

Spørsmål til deg selv (blir ikke rettet): hvilken nedlastingsmetode er stilt inn i butikken din, og hvordan har du ordnet angreretten for de digitale produktene dine?

Oppgave A3.3: Er nedlastingene dine skjermet?

Denne kontrollen henter stier som du bare lar oss sjekke for din egen nettbutikk. Klikk først på "Vis koden min" og legg koden inn som TXT-post på _weboke-cursus.<ditt domene> eller som en fil på nettstedet ditt (se forklaringen ved koden).



Det du fyller inn, og det vi finner, lagrer vi ikke. Nettleseren din husker svarene dine og om du har bestått oppgaven. Er du logget inn, lagrer vi kun at du har (nesten) bestått oppgaven i Mine kurs; der kan du også slette det.

Les mer

Kunnskapsbasen beskriver situasjonen hos WebOké (LiteSpeed, .htaccess virker); hos andre leverandører fungerer det på samme måte, unntatt på nginx.

Et øyeblikk …

Sett opp domenene dine

Ordne for hvert domene navnetjenerne, koblingen til hostingen din og hvem som blir innehaver.

Laster inn domenene dine…