WN

WN (https://www.wn.se/forum/index.php)
-   Serversidans teknologier (https://www.wn.se/forum/forumdisplay.php?f=4)
-   -   Bash-script crawla xml-sitekarta - generera cache'ade filer (https://www.wn.se/forum/showthread.php?t=1063856)

Lidback85 2015-01-09 13:18

Bash-script crawla xml-sitekarta - generera cache'ade filer
 
Hej,
Har en sajt som grundar sig på WordPress som behöver generera cache-filer helt enkelt. Jag använder ett cache-plugin och brukade använda det tillsammans med pluginet WarmCache, som crawlar via min xml-sitekarta. Problemet med det är att om det är många sidor som skall crawlas, så ger WarmCache-pluginet timeout, då den kommer upp i phptimeout-limit. Samt att det inte uppdaterats på väldigt länge.

För att göra det lite smidigare så har jag hört att det går att göra med bash-script, precis på samma sätt som WarmCache-pluginet gör.

Är det någon som har en färdig kodsnutt för detta?
Eller kan peka mig i rätt riktning så jag kan få till det?

Ber om ursäkt i förväg för lite kladdig text. Inte fått i mig min kopp kaffe ännu.

För att summera ihop allt:
Bash script > Crawlar XML-kartan > Cachepluginet skapar cache-filer när någon crawlar/besöker sida på sajten.

nim 2015-01-09 14:05

Vad som är värt att tänka på, är att inte starta bash scriptet från PHP. Utan kör det som ett cron-job eller dylikt.

http://symcbean.blogspot.se/2010/02/...processes.html

Lidback85 2015-01-09 14:06

Löst problemet.
Detta funkade fint för mig.


Citat:

#!/bin/bash
SMA="url-till-xml-kartan"
SLEEP=0.6
for i in `curl $SMA | grep "<loc>" | cut -d ">" -f 2 | cut -d "<" -f 1`;
do
wget $i -nv -O tmp/precache.tmp >> log/precache.log;
echo "$i" >> log/precache.log
sleep $SLEEP;
done
rm tmp/precache.tmp

Lidback85 2015-01-09 14:17

Citat:

Ursprungligen postat av nim (Inlägg 20504468)
Vad som är värt att tänka på, är att inte starta bash scriptet från PHP. Utan kör det som ett cron-job eller dylikt.

http://symcbean.blogspot.se/2010/02/...processes.html

Tack för infon!
Kör bash-scriptet via crontab.

Mvh,
Andreas

nim 2015-01-09 17:59

Varför laddar du ner innehållet?

Använd tex, --spider för att enbart "besöka" sidan.

Lidback85 2015-01-09 18:07

Citat:

Ursprungligen postat av nim (Inlägg 20504504)
Varför laddar du ner innehållet?

Använd tex, --spider för att enbart "besöka" sidan.

Körde med --spider först. Då verkar inte cache-plugin'et skapa cachade filer, tyvärr.


Alla tider är GMT +2. Klockan är nu 10:30.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson