Hvis du er en utvikler av noe slag, har du sikkert hørt om Pastebin.com, den mest brukte nettapplikasjonen for å lime inn og dele tekstbiter. Pastebin.com er flott, men det er ikke det eneste pastebin-verktøyet der ute.
Faktisk blir det stadig mer vanlig at nettsteder er vert for sine egne pastebins. Det gir deg mer frihet. Det er mange open source pastebin-implementeringer, og Stikked er en av de mer nyttige med sine avanserte funksjoner og strømlinjeformet brukergrensesnitt.
Stikket er bygget med PHP og jQuery og bruker CodeIgniter-rammeverket.
Installerer Stikked
Stikked krever at serveren din kjører:
- Git
- Nginx
- Docker og Docker Compose
- For å laste ned den nyeste versjonen av Stikked, besøk Stikked GitHub-siden eller gå til kommandolinjen og kjør:
git clone https://github.com/claudehohl/Stikked.git
- Gå til Stikked-mappen:
cd ./Stikked

- Åpne «docker-compose.yml»-filen inne ved å bruke din favoritt tekstredigerer.
- Rull til «ports:»-variabelen under kategorien «tjenester:» og endre verdien til følgende:
ports:
- 8080:80/tcp

- Rull til kategorien «mysql:» og erstatt underkategorien «command:» med følgende kode:
command: mysqld

- Åpne hovedkonfigurasjonsfilen for Stikked:
nano ~/Stikked/docker/stikked.php
- Gå til linjen som inneholder variabelen
$config['base_url']og erstatte «localhost» med systemets fullt kvalifiserte domenenavn. Lagre og avslutt filen.

- Åpne «nginx.conf»-filen inne i Stikked-beholderen:
nano ~/Stikked/docker/nginx.conf
- Fjern de tre linjene under «Kun forespørsler til vår vert er tillatt.»

- Bygg Docker-beholderen din ved å kjøre følgende kommando:
docker compose up -d
FYI: Lær hvordan du kan være vert for ditt eget Kanban-brett på Linux ved å bruke Docker og Kanboard.
Opprette en SSL Nginx Reverse Proxy
På dette tidspunktet har du nå en Stikked-installasjon som kjører på port 8080. Mens du kan bruke denne som den er, kan den grunnleggende Stikked-beholderen være usikker siden den ikke krypterer tilkoblingen som standard. For å fikse dette, må du opprette en omvendt proxy som kan lytte etter innkommende tilkoblinger som den deretter krypterer gjennom SSL.
- Opprett en ny sidekonfigurasjonsfil under «/etc/nginx/sites-available/»
sudo nano /etc/nginx/sites-available/stikked
- Lim inn følgende kode i den nye nettstedsfilen. Dette er en enkel omvendt proxy som lytter på innkommende ukrypterte tilkoblinger på port 80 og omdirigerer alle spørringer til port 8080.
server { listen 80; listen [::]:80; root /var/www/html; server_name my-stikked-installation.com; location / { proxy_set_header X-Forwarded-For $remote_addr; proxy_set_header Host $http_host; proxy_pass http://localhost:8080; } }

- Lag en symbolsk lenke for nettstedsfilen din inne i «/etc/nginx/sites-enabled» og fjern standard nettstedsfilen i den:
sudo ln -s /etc/nginx/sites-available/stikked /etc/nginx/sites-enabled/
- Test Nginx-konfigurasjonen for eventuelle feil, og aktiver deretter Nginx-tjenesten
systemctl:
sudo nginx -t sudo systemctl reload nginx.service
Installere et SSL-sertifikat
Med din omvendte proxy oppe og kjører, kan du nå be om et SSL-sertifikat for din Stikked-forekomst. Det enkleste alternativet er å installere certbot snap-pakken fra Electronic Frontier Foundation.
- Sørg for at kjernenap-binærfilene dine er oppdatert og kjører:
sudo snap install core sudo snap refresh core
- Installer certbot ved å bruke din Stikked-maskins snap-binær:
sudo snap install certbot --classic

- Test om programmet kjører riktig ved å koble e-postadressen din til certbot:
sudo certbot register --agree-tos -m ramces@email.invalid
- Kjør certbot igjen for å lage et SSL-sertifikat for din Stikked-forekomst:
sudo certbot --nginx -d my-stikked-installation.com
- Åpne en nettleser og sjekk om Stikked-forekomsten din kjører under SSL.

Godt å vite: Lær hvordan kryptering fungerer over internett ved å utstede ditt eget SSL-sertifikat gjennom OpenSSL.
Styling av din stikkede installasjon
Alle stildataene finnes i katalogen kalt «temaer» under «htdocs»-katalogen i Git-depotet ditt. For kick, ta en titt inne i underkatalogen for å se noen interessante valg.
- Gå inn i Stikked Git-depotet og naviger til «htdocs/themes»-katalogen.
cd ~/Stikked/htdocs/themes
- De fleste av stylingvalgene er gjort i hver temamappe. Geocity-temaet forvandler for eksempel din Stikked til å se ut akkurat som en nettside på 1990-tallet.

- For å endre instansens utseende, må du først slå av Docker-beholderen:
docker compose down
- Åpne forekomstens hovedkonfigurasjonsfil ved å bruke din favoritt tekstredigerer:
nano ~/Stikked/docker/stikked.php
- Rull ned til linjen som inneholder
$config['theme']variabel og endre verdien til «cleanwhite».

- Lagre hovedkonfigurasjonsfilen din og last Docker-beholderen på nytt:
docker compose up -d
- Åpne en nettleser og last inn den nye nettsiden din. Her er min «Opprett»-side etter å ha lastet cleanwhite-temaet.

Egenskaper
Stikked har en rekke interessante funksjoner som gjør at den skiller seg ut fra mengden av andre pastebin-skript.
For det første kjører den spekteret når det gjelder syntaksutheving. Stikked støtter en enorm liste over programmerings- og skriptspråk, fra C til Bash. Uansett hva du koder inn, har Stikked-installasjonen deg dekket.

Språket til hver kodebit vises i en tabell på «Nylig»-siden; hvis plakaten ikke spesifiserte et språk for en lime, er den merket med «tekst». Tabellen viser også tittelen, plakatens navn og siste nytt, sammen med et RSS-ikon. RSS-feeden ligger på your-stikked-installation.com/lists/rss.

«Trending»-siden er nesten identisk, men med tillegg av en «treff»-kolonne og ingen RSS-feed. Treff ser ut til å bli beregnet basert på besøk fra unike IP-adresser.

Når du oppretter en lim, har du muligheten til å angi en utløpsdato, lage en kort URL ved å bruke tjenesten på bit.ly, og/eller gjøre innlegget privat. Merk at en «privat» pasta ikke er virkelig privat; enhver bruker som har innlimingens URL kan se den, med mindre du har aktivert LDAP-autentisering – i så fall kan alle registrerte brukere med URL se den. «Privat» betyr bare at innlegget ikke vises på sidene for nylig eller på vei opp.

Bortsett fra sikkerhet, gir Stikked noen pene verktøy for å se en lim. Jeg er spesielt fornøyd med innebygde koden.

Du kan også svare på lim og legge til dine egne redigeringer fra et skjema under den opprinnelige limen. Den eneste ulempen med dette er at svar ikke lenker tilbake til det opprinnelige innlegget; hvis pastebinen din har mange forskjellige innlegg og svar laget til forskjellige tider, er det lett å miste oversikten over strukturen deres. Jeg kan bare håpe at utvikleren på et tidspunkt vil introdusere trådede svar.
En siste funksjon er spam-kontroll, som Stikked refererer til som «spamadmin.» Sett det opp ved å skrive inn legitimasjon i «docker/stikked.php» på linje 79 og 80:
$config['spamadmin_user'] = 'stikked'; $config['spamadmin_pass'] = 'stikked';
Gå til your-stikked-installation.com/spamadmin for å logge inn. Der kan du se hvilke pastaer som kom fra hvilke IP-adresser, fjerne pastaer og blokkere IP-områder.

API
Stikkeds API lar deg lime inn i den fra pastebin-klienter. API-URLen som skal brukes i klienten din er your-stikked-installation.com/api/create.
Et grunnleggende eksempel er å bruke cURL-kommandoen til å laste opp en fil som heter «smalltalk.st», og angi tittel, navn, personvern, språk og utløpstid i minutter:
curl -d title='cURL test' -d name='Ramces' -d private=1 -d lang=c -d expire=45 --data-urlencode text@count.c https://my-stikked-installation.com/api/create
Dette vil returnere URL-en til limen.

Ønsker du en enkel måte å samle og dele tekstbiter på din egen nettside, anbefaler jeg deg å prøve Stikked.
På den måten er en måte å raskt få noen tekstbiter å dele ved å lære et nytt programmeringsspråk. Lær hvordan du kan skrive Bash-manus ved å gå gjennom vår enkle guide for nybegynnere. Du kan også utvide denne kunnskapen ved å lese gjennom vårt dypdykk om Bash-variabler og deres bruk.
Støtt vårt arbeid ❤️
Hvis du likte denne artikkelen, vurder å gi en tips for å hjelpe oss med å fortsette å publisere kvalitetsinnhold.




















