FastComments.com


Εδώ θα καλύψουμε το μορφότυπο σχολίων του FastComments, τις δυνατότητες που υποστηρίζονται κατά τη σύνταξη σχολίων, πώς να μορφοποιείτε το κείμενο, και τα διάφορα φίλτρα και μέτρα ασφάλειας που έχουν ενσωματωθεί στο σύστημα.


Βασική μορφοποίηση Internal Link

Το FastComments χρησιμοποιεί έναν συνδυασμό Markdown και ενός απλού υποσυνόλου HTML για να επιτρέψει τη συγγραφή σχολίων.

Ένας καλός πόρος για σύνταξη Markdown είναι εδώ.

Για την πιο συνηθισμένη μορφοποίηση, μπορείτε να χρησιμοποιήσετε τη γραμμή εργαλείων μορφοποίησης για να κάνετε πράγματα όπως έντονη ή πλάγια γραφή κειμένου.

Μερικά παραδείγματα σύνταξης είναι:

  • Έντονα:
    • **έντονα**
    • <b>έντονο κείμενο</b>
  • Πλάγια:
    • *πλάγια*
    • <i>πλάγιο κείμενο</i>
  • Διαγραμμένο:
    • ~~διαγραμμένο~~
    • <strike>διαγραμμένο</strike>
  • Αποσπάσματα:
    • > απόσπασμα

Σημειώστε ότι οι επικεφαλίδες Markdown δεν υποστηρίζονται.

Οι σύνδεσμοι μπορούν να γραφτούν ως ακατέργαστο URL, χωρίς HTML ή άλλη σύνταξη, και από προεπιλογή ο σύνδεσμος θα μετατραπεί σε σύνδεσμο με δυνατότητα κλικ με target="nofollow noopener" για να αποθαρρύνει τους spammers. Ορισμένοι ιστότοποι μπορεί να επιλέξουν να απενεργοποιήσουν την αυτόματη δημιουργία συνδέσμων.

Οι αριθμημένες λίστες μπορούν να γραφτούν ως εξής:

1. Πρώτο στοιχείο.
2. Δεύτερο στοιχείο.
3. Τρίτο στοιχείο.

Το ίδιο ισχύει για τις λίστες με κουκκίδες:

- Κάποιο σημείο.
- Κάποιο άλλο σημείο.

Για κοινότητες προσανατολισμένες στον προγραμματισμό, ο κώδικας μπορεί να κοινοποιηθεί επικολλώντας τον στην περιοχή σχολίων και η γλώσσα θα ανιχνευθεί και θα μορφοποιηθεί αυτόματα. Ο κώδικας μπορεί να προστεθεί σε ετικέτες <code></code> ή μπλοκ κώδικα Markdown με backticks.

Ασφάλεια Internal Link

Υπάρχουν πολλαπλές πτυχές ασφάλειας όταν επιτρέπουμε στους ανθρώπους να προσθέτουν περιεχόμενο σε έναν ιστότοπο και στη συνέχεια να αποδίδουμε αυτό το περιεχόμενο σε πολλούς διαφορετικούς τύπους συσκευών.

Αποτροπή κατάχρησης μορφοποίησης

Οι άνθρωποι μπορούν να γράψουν περιεχόμενο που είναι σκόπιμα οπτικά αποσπαστικό και μειώνει την αξία των συζητήσεων καταχρώμενοι τη μορφοποίηση κειμένου.

Το FastComments κάνει διάφορα πράγματα για να αποτρέψει την κατάχρηση σε σχέση με τη μορφοποίηση:

  • Οι μεγάλες επαναλαμβανόμενες διαδοχικές αλλαγές γραμμής συμπτύσσονται.
  • Δεν αποδίδουμε επικεφαλίδες (γίνονται κανονικό κείμενο).
  • Δεν επιτρέπουμε CSS ή προσαρμοσμένα χρώματα.

Αποτροπή exploits

Τα exploits μπορούν να δημιουργηθούν σε συστήματα που αποδίδουν HTML. Το FastComments κάνει διάφορα πράγματα για να το αποτρέψει αυτό:

  • Επιτρέπουμε μόνο ένα ρητά καθορισμένο σύνολο ετικετών HTML.
  • Επιτρέπουμε μόνο ένα ρητά καθορισμένο σύνολο χαρακτηριστικών ετικετών HTML.
  • Καθαρίζουμε και απολυμαίνουμε όλες τις εισόδους.
    • Αυτό γίνεται μέσω των βιβλιοθηκών DOMPurify και sanitizeHtml.
    • Επιλέξαμε αυτές τις βιβλιοθήκες επειδή είναι καλά δοκιμασμένες (με πάνω από 4 και 1 εκατομμύριο λήψεις την εβδομάδα, αντίστοιχα).

Αυτό σημαίνει ότι οι χρήστες δεν μπορούν να κάνουν πράγματα όπως να γράψουν ετικέτες <script> ή <style>, ή να προσπαθήσουν να προσθέσουν scripts τύπου onload=alert() σε εικόνες ή άλλο περιεχόμενο.

Οι ετικέτες HTML που επιτρέπουμε είναι οι εξής:

  • <b>
  • <em>
  • <u>
  • <i>
  • <strike>
  • <pre>
  • <span>
  • <code>
  • <img>
  • <a>
  • <strong>
  • <ul>
  • <ol>
  • <li>
  • <br>