Hvis du er en udvikler af nogen art, har du sikkert hørt om Pastebin.com, den mest anvendte webapplikation til at indsætte og dele tekstuddrag. Pastebin.com er fantastisk, men det er ikke det eneste pastebinværktøj derude.

Faktisk bliver det mere og mere almindeligt, at websites er vært for deres egne pastebins. Det kan give dig mere frihed. Der er mange open source pastebin implementeringer; I undersøgelsen af ​​denne artikel kom jeg på tværs af mindst 20 pastebinprojekter i aktiv udvikling. Jeg testede et par af deres online demoer og afviklede med at bruge Stikked for sine avancerede funktioner og strømlinet brugergrænseflade.

Stikked er bygget med PHP og jQuery og bruger CodeIgniter rammen.

Installation af stikked

Stikked kræver, at din server kører:

  • PHP 5
  • Apache
  • MySQL

For at downloade den nyeste version af Stikked kan du besøge Stikked GitHub-siden eller gå til din kommandolinje og køre:

 git klon https://github.com/claudehohl/Stikked.git 

Ved hjælp af git clone vil give dig en mappe kaldet "Stikked." Inden for den mappe er en anden mappe kaldet "htdocs"; kopi indholdet af htdocs til en mappe du vælger på din webserver.

Før du kan køre Stikked, skal du forberede et par ting. Opret først en MySQL database. Hvis din server bruger cPanel, kan du gøre dette ved at gå til din administration side og klikke på "MySQL Databaser."

Opret en database, tilføj en bruger til den, og giv databasebrugeren alle rettigheder.

Nu hvor du har oprettet en database til din Stikked-installation, skal du ændre filprogrammet / config / stikked.php for at pege på det. Gå til linje 18 til 21 og skift databaseoplysningerne korrekt. For eksempel:

 $ config ['db_hostname'] = '127.0.0.1'; $ config ['db_database'] = 'rujic_stikked'; $ config ['db_username'] = 'rujic_rujic'; $ config ['db_password'] = 'stikked'; 

Nu skal du være i stand til at få adgang til your-stikked-installation.com/index.php og se dette:

Stikked.php-filen indeholder nogle andre indstillinger, du kan ændre også. For at for eksempel kræve LDAP-godkendelse skal du redigere linje 117:

 $ config ['require_auth'] = true; 

Bemærk, at hvis du indstiller dette til sandt, skal du også konfigurere dine LDAP-indstillinger i application / config / auth_ldap.php.

Sjovt faktum : Lini 99 giver dig mulighed for at angive standardnavnet for anonyme plakater til en tilfældig sætning:

 $ config ['unknown_poster'] = 'tilfældigt'; 

Rul ned til linje 136 for at se eller redigere listen over tilfældige navneord, efterfulgt af listen over tilfældige adjektiver.

Styling din stikked installation

Alle stildata findes i biblioteket "static". For spark skal du kigge inde i undermappen "skrifttyper" for at se nogle interessante valg.

De fleste stilingsvalg er lavet i filen "static -> styles -> main.css". Jeg ændrede main.css for at inkludere et af de forudinstallerede skrifttyper ved hjælp af @font-face reglen:

 @ font-face {font-family: font19; src: url ('../ fonts / font19.ttf'); } 

Her er min "Opret" side, efter at jeg havde en masse sjov med main.css:

Funktioner

Stikked har en række interessante funktioner, der gør det skiller sig ud fra mængden af ​​andre pastebin scripts.

For det første kører det gamut når det kommer til syntax fremhævning. Stikked understøtter en enorm liste over programmerings- og scripting-sprog, fra 4CS til Oz til ZXBasic. Uanset hvad du koder for, har din Stikked installation (sikkert) fået dig dækket.

Hver snippets sprog vises i en tabel på siden "Seneste"; hvis plakaten ikke angav et sprog til en pasta, så er det mærket "tekst". Tabellen viser også titlen, plakatens navn og nyhed sammen med et RSS-ikon. RSS-feedet er placeret på din-stikkede-installation.com/lists/rss.

Siden "Trending" er næsten identisk, men med tilføjelsen af ​​en "hits" kolonne og ingen RSS feed. Hits synes at blive beregnet ud fra besøg fra unikke IP-adresser.

Når du opretter en pasta, har du mulighed for at angive en udløbsdato, opretter en kort webadresse ved hjælp af tjenesten på gw.gd og / eller gør posten privat. Bemærk, at en "privat" pasta ikke er virkelig privat; Enhver bruger, der har pastaens URL, kan se den, medmindre du har aktiveret LDAP-godkendelse - i så fald kan hver registreret bruger med webadressen se den. "Privat" betyder kun, at indlægget ikke vises på siderne Nyligt eller Trendende.

Sikkerhed til side, Stikked giver nogle pæne værktøjer til at se en pasta. Jeg er især tilfreds med embed-koden.

Du kan også svare på pastaer og tilføje dine egne redigeringer fra en formular under den oprindelige indsæt. Den eneste ulempe ved dette er, at svar ikke linker tilbage til det oprindelige indlæg; hvis din pastebin har mange forskellige indlæg og svar lavet på forskellige tidspunkter, er det nemt at miste deres struktur. Jeg kan kun håbe, at bygherren på et tidspunkt vil introducere en løsning, som f.eks. Gennemgang af svarene og implementering af en diff viewer.

En sidste funktion jeg nævner er spam kontrol, som Stikked refererer til som "spamadmin." Sæt det op ved at indtaste credentials i config / stikked.php på linjerne 79 og 80:

 $ config ['spamadmin_user'] = 'stikked'; $ config ['spamadmin_pass'] = 'stikked'; 

Gå til your-stikked-installation.com/spamadmin for at logge ind. Der kan du se hvilke pastaer der kommer fra hvilke IP-adresser, fjerne pastaer og blokere IP-intervaller.

API

Stikked's API giver dig mulighed for at indsætte det fra pastebin-klienter. API-webadressen til brug i din klient er din-stikkede-installation.com/api/create.

Et grundlæggende eksempel er at bruge cURL-kommandoen til at uploade en fil kaldet "smalltalk.st". Indstilling af titel, navn, privatliv, sprog og udløbstid i minutter:

 curl -d title = 'cURL test' -d navn = 'Ruji' -d privat = 1 -d lang = smalltalk -d udløber = 45 - data-urlencode [email protected] http: // my-stikked-installation .com / api / skabe 

Dette vil returnere webadressen til klassen.

Konklusion

Hvis du har læst, at Stikked er død, har du det forkert. Mens den gamle Stikked blev forladt efter version 0.5.4, går den nye Stikked stærk og fortsætter med at introducere nyttige funktioner med hver udgivelse. Jeg anbefaler, at du giver det en chance, hvis du vil have en nem måde at samle og dele tekstuddrag på din egen hjemmeside.

Hvad bruger du pastabins til? Har du brug for din egen pastebin?