Weekend Prosjekt: Erstatt Deilig med en Open Source bokmerke Service


De siste to ukene har vært tøffe for brukere av Yahoo-eide " sosiale bokmerker " service, Delicious. Først rapporter lekket ut at Yahoo var slå området ned. Da Delicious teamet sparket tilbake sa egentlig ikke bekymre deg, er alt godt – vi bare komme solgt
. Det er kaldt trøst hvis du bruke tjenesten til å administrere og merke en stor samling av linker, skjønt. Hvis du ikke er komfortabel med usikkerhet, hva bedre løsning er det enn å installere din egen open source erstatning?

Kjøre din egen Web bookmarking programmet har to viktige fordeler fremfor en proprietær kommersiell tjeneste. Først kan du endre og tilpasse systemet til å passe din måte å arbeide på. Bryr seg ikke om å dele samlingen din med den store verden? Du kan kjøre en enbruker-forekomst og holde bokmerkene dine private. Sekund, kan du legge den ut på din egen server, om en liten boks i skapet hjemme, eller på en samlokalisert hosting plan – Uansett, du er i kontroll.

Det er flere webbaserte bokmerker programmer som egner seg for å kjøre på en LAMP-server oppsett, men det alternativet som best samsvarer den Delicious tjenesten er kullboks. Det implementerer Delicious API, støtter flere brukerkontoer, og selv lar deg importere din bokmerkesamling fra Delicious. Kullboks krever MySQL og PHP, og den siste utgivelsen er versjon 0.8.0, fra desember 21. 2010. Det er nylig nok at selv om enkelte Linux-distribusjoner gi bygger gjennom sine pakken styringssystemer, de fleste vil ikke ha fanget opp ennå.

Det betyr at du må ta en kilde pakke fra prosjektets hjemmeside hvis du ønsker å kjøre de nyeste og beste, men ikke la det skremme deg bort. Som en ren LAMP app, trenger du ikke å bekymre deg for kompilering – installasjonsprosessen er grei. Vi vil ta en titt på å installere og konfigurere grunnleggende kullboks søknaden, deretter snakke om noen alternativer, inkludert en interessant Scuttle derivat.

Basic kullboks Installasjon

Den kullboks 0.8.0 pakken veier på en slank 313K. Du kan laste det ned og pakke ut tar-ballen i Web-serverens dokument rot, for eksempel /var /www /kullboks. Konfigurasjonen krever to trinn: utvikle programmets MySQL database og tabeller, og konfigurere oppsettet i PHP-skript. Etter det, vil du opprette én eller flere brukerkontoer, og kan importere Delicious bokmerker

Start med å lage MySQL database.; dokumentasjonen bruker databasenavnet " kullboks, " men selvfølgelig det er opp til deg. Du vil også være lurt å opprette en database bruker som som programmet kan koble til, og tildele tilstrekkelige privilegier. Du kan utføre begge disse trinnene gjennom et webgrensesnitt som phpMyAdmin, eller fra kommandolinjen. For eksempel skaper mysql -u root -p -h yourmysqlhost.example.com CREATE DATABASE scuttle den (opprinnelig tom) database, og mysql -u root -p -h yourmysqlhost.example.com GRANT endre, opprette, slette, slipp, sette inn, oppdatere, velg PÅ kullboks. * Å scuttleuser identifisert av SomePasswordThatYouPick skaper databasebruker.

For å opprette og initialkullboks faktiske databasetabeller, omfatter kilde pakke en SQL-kommando fil som heter tables.sql
. Du kan importere det fra MySQL kommandolinjen med mysql -u scuttleuser -D scuttle -p < tables.sql. Selv om kullboks selv støtter flere åpen kildekode-databaser, er tables.sql filen designet spesielt for bare MySQL, så hvis du bruker en annen database (spesielt en med kjente forskjeller, for eksempel PostgreSQL), bare fortsett hvis du vet hva du gjør og er forberedt på å feilsøke SQL-kommandoer selv.

Deretter gå inn i kullboks katalog og åpne filen config.inc.php.example i din favoritt editor. Du må endre databasekonfigurasjonsinnstillingene blokkere for å reflektere database host, database brukernavn og passord, og TCP-portnummeret som brukes av MySQL server. Under det " Basic Configuration " blokk lar deg velge en " områdenavn " som vises i topptekster, standardspråket, og en e-postadresse hvor nettstedets administrator kan motta varsler

Det er den eneste påkrevd
konfigurasjon.; du bør være i stand til å gå til http: //yourwebserver.yourdomain/scuttle
nå og opprette en ny brukerkonto. Du kan imidlertid justere noen andre innstillinger i den siste konfigurasjonen blokken for å justere ting som standard sorteringsorden bokmerker, antall bokmerker per side, og så videre. Også være at du tar en titt på url_redir
setting; dette er en URL mønster som kullboks bruker til rør brukernes klikk gjennom en omdirigering tjeneste, og dermed skjule opprinnelsen av kullboks service og beskytte brukerne fra å vises i serverlogger over Internett. Den bruker tiden Googles URL omdirigering service, men dette er ikke et offisielt arrangement, så hvis og når Google endrer sin omdirigering mønster, må du komme tilbake til denne filen og endre denne innstillingen for å matche.

Når alt er konfigurert til din smak, lagre filen som config.inc.php. Fjerne eller endre navn på den opprinnelige .eksempel filen, deretter justere tillatelsene på kullboks buffer underkatalog med chmod 777 /var /www /kullboks /cache. Endelig få opp nettadressen i nettleseren din. Du vil se en " registrere " lenke i høyre hjørne; Klikk på den for å sette opp en ny konto

Hvis dette er første gang du bruker kullboks, klikk på ". legge til et bokmerke " adresse i overskriften siden. Her finner du et skjema hvor du kan manuelt legge inn en URL, siden tittel, kort beskrivelse, og kommaseparert tag listen, kjøpe du vil også finne bokmerket importalternativene nederst på siden. Kullboks kan importere en HTML-basert Firefox bokmerker fil eller et Delicious-kompatibel lappen i XML-format. Hvis du migrerer fra Delicious, er det enkleste alternativet å logge på Delicious XML eksportør og eksportere samlingen din, lagre den som en lokal fil. Deretter velger du den filen i kullboks er importør, og vips, bokmerker, kommentarer og tags er alle lastet opp til kullboks database.

Herfra ut, kan du bruke kullboks er snarveier som din link skapende verktøy – bare dra koblingen bookmarklet til verktøylinjen din. Alternativt kan du installere Scuttle Firefox Extension. I øyeblikket er den versjonen vert på Mozillas Add-ons stedet ut på dato; en annen utbygger har oppdatert det for 3.x kompatibilitet (men selvfølgelig bør du alltid bruke forsiktighet når tredjeparts add-ons installert).

Semantisk Scuttle

En stor fordel med en åpen kildekode Deilig erstatning ikke er nevnt i innledningen ovenfor er at åpen kildekode kan og ikke legge til nye funksjoner raskere enn en stor, proprietær programvareleverandøren vil. Dette gjelder for kullboks; en populær gaffel heter Semantic Scuttle finnes som bygger på originalens funksjonssettet

Sannsynligvis den mest merkbare utvidelsen er støtte for ". strukturerte tags " – hvor kullboks og Delicious tillatelse merke koblinger med kontekstfrie, uorganiserte tags, Semantic kullboks lar deg bygge relasjoner mellom ulike koder, der man tag er en undergruppe av en annen. App bruker større-enn-tegn (>) for å vise dette; dermed tagging en link som Nederland > Amsterdam legger det til to tags, og kobler kodene til hverandre. Du kan komme til linken under Nederland eller
Amsterdam, og semantisk kullboks vil bygge en fin, brødsmule-stil nettleser for deg til å klikke gjennom hierarki av koblinger i en mer organisert måte.

Semantisk Scuttle også støtter ". samarbeids beskrivelser " Med kullboks, du som bokmerke-maker kan skrive en kort beskrivelse av hver nettadresse som du lagrer. Med Semantisk kullboks, andre brukere på det samme systemet kan også legge til kommentarer av sine egne.

Den nyeste Semantic kullboks utgaven er versjon 0.97.1, fra september 2010. Jeg har ikke funnet noen Linux-distribusjon som pakker Semantisk Scuttle ennå (selv om det betyr ikke at din gjør det ikke), så vil du sannsynligvis nødt til å installere det manuelt. Bunten er betydelig større, på 1.1MB. Heldigvis er prosessen nesten identisk med den opprinnelige kullboks s. Den viktigste forskjellen er plasseringen av PHP konfigurasjonsfilen: i semantisk kullboks, finner du den under data /as config.php

Du må redigere de samme grunnleggende parametrene i denne filen. Database innstillinger og kontakt administrator info. Du kan også legge til egendefinerte topp- og bunntekstmeldinger i denne filen, og det finnes noen alternativer som har blitt omarrangert, men kommentarene dokumentere hver del også. Som med kullboks, du har fortsatt å opprette en database og databasebruker, og lage tabeller ved hjelp av den medfølgende tables.sql kommandofilen. Semantic Scuttle dokumentasjon ikke eksplisitt si om sin tables.sql er MySQL-spesifikke, men hvis du er i tvil, er det best å spille det trygt.

Semantisk Scuttle har noen ekstra back-end funksjoner du kanskje som, for eksempel muligheten til å opprette flere admin-nivå kontoer; disse kontonavn er oppført i config.php, og brukerne kan gjøre endringer i systemet fra webgrensesnittet, inkludert å legge til og slette bruker bokmerker. Avanserte alternativer inkluderer muligheten til å omorganisere innholdet utformingen av området, og legger en enkel spam-forebygging rutine til brukerregistrering, fange " sideminiatyrer " for hvert bokmerke, og muliggjør en URL-forkorting service. Det er eksperimentell støtte for eksterne godkjenningsrutiner, inkludert RADIUS og LDAP. OpenID kan være en mulighet for fremtiden.

Alternativer og Alternatives

Som du sikkert lagt merke til, kullboks og semantisk kullboks er designet for å gjenskape den fulle Delicious erfaring, som er en multi-user miljø der brukerne kan se hverandres bokmerker (i alle fall de som er utpekt som offentlige). Men du trenger ikke å bruke enten app som et flerbrukerverktøy, eller faktisk å la den være åpen for alle i verden å få tilgang. Semantisk kullboks lar deg skru av brukerregistrering med en enkel bryter inne config.php. Original oppskrift Scuttle krever litt mer arbeid; du kan fjerne koblingen registrering fra topp- og deaktivere eller fjerne registreringen PHP-filen.

Men hvis du virkelig ikke opptatt av det sosiale link-deling aspekt av Delicious, kan det være lurt å se nærmere på en av de andre åpen kildekode bokmerke besparende alternativer på markedet. Det enkleste svaret hvis du er en Firefox-bruker er det Firefox Sync tjeneste fra Mozilla selv. Innebygd i Firefox 4, er den tilgjengelig som en utvidelse for Firefox 3.x, og bruker sterk kryptering for å beskytte en ekstern kopi, ikke bare av bokmerkene, men også nettleserens historikk, lagrede skjemadetaljer og annen informasjon om økten, og automatisk synkroniserer flere Firefox-profiler på forskjellige datamaskiner.

Det finnes andre alternativer, også, som Lagre-to-Read, en åpen kildekode erstatning for proprietære lese den senere service, og Zotero, bokmerket-og -annotation system som tilpasser sin funksjon satt til brukerne bygge en veldokumentert lenkesamlingen egnet for forskere

Hvis du blar gjennom ". bokmerker " kategori av Firefox Add-ons nettstedet, vil du se side etter side med bokmerke-tjenester som hver tilbyr en unik kombinasjon av funksjoner. Bare pass av leksjonen av Delicious når du velger en: når du stole utelukkende på overlevelsen av en proprietær selskap som vert for data, uunngåelig det kommer en dag da du må gå på jakt etter en erstatter
.