Μόλις ένα βίντεο γίνει δημόσιο, όποιος μπορεί να διαβάσει τον κώδικα της σελίδας σας μπορεί να αντιγράψει τη διεύθυνσή του. Μερικές φορές αυτό δεν πειράζει. Συχνά όμως πειράζει: ένας άλλος ιστότοπος ενσωματώνει τον player σας και ξοδεύει την κίνησή σας, μια άδεια καλύπτει μόνο ορισμένες χώρες ή ένα εύρος διευθύνσεων συνεχίζει να αντλεί αυτόματα τη βιβλιοθήκη σας. Το UFOLOAD σας δίνει αρκετούς ελέγχους γι' αυτό, οι οποίοι λειτουργούν σε διαφορετικά επίπεδα. Αυτό το άρθρο εξηγεί τι κάνει ο καθένας, πώς λειτουργούν οι κανόνες αντιστοίχισης και πού σταματά ο καθένας, ώστε να τους συνδυάσετε με λογική αντί να εμπιστεύεστε έναν μόνο διακόπτη.
Οι έλεγχοι με μια ματιά
| Έλεγχος | Τι περιορίζει | Πού τον ρυθμίζετε |
|---|---|---|
| Επιτρεπόμενα domains ενσωμάτωσης | Ποιοι ιστότοποι μπορούν να δείχνουν τον player σας σε iframe | Player studio, καρτέλα Πρόσβαση |
| Αποκλεισμένες χώρες | Θεατές από τις χώρες της λίστας | Player studio, καρτέλα Πρόσβαση |
| Αποκλεισμένες διευθύνσεις IP | Μεμονωμένες διευθύνσεις και μάσκες | Player studio, καρτέλα Πρόσβαση |
| Επιτρεπόμενα domains λήψης | Ποιοι ιστότοποι μπορούν να ανοίγουν τη σελίδα λήψης | Player studio, καρτέλα Πρόσβαση |
| Υπογεγραμμένοι σύνδεσμοι με διάρκεια ισχύος | Πόσο καιρό ισχύει μια διεύθυνση αναπαραγωγής και για ποιον | API, POST /files/{id}/links |
Όλα όσα βρίσκονται σε αυτή τη λίστα ανήκουν στις ρυθμίσεις player και παράδοσης του λογαριασμού σας και ισχύουν για όλα τα βίντεό σας. Οι κανόνες είναι διαθέσιμοι σε κάθε πρόγραμμα· μόνο το ίδιο το κουμπί λήψης περιορίζεται στα προγράμματα Pro και Max, όπως δείχνει η σελίδα τιμών.
Βήμα 1: κλειδώστε την ενσωμάτωση στα domains σας
Ο player ενσωμάτωσης τρέχει μέσα σε iframe στη σελίδα κάποιου άλλου και ο browser του λέει ποια σελίδα είναι αυτή μέσω του referrer. Ο player στέλνει αυτόν τον host στον διακομιστή, ο οποίος τον συγκρίνει με τη λίστα σας. Αν ο host δεν είναι στη λίστα, ο διακομιστής απορρίπτει το αίτημα με 403 και ο player δείχνει μήνυμα μη διαθεσιμότητας αντί για το βίντεο.
Οι κανόνες αντιστοίχισης είναι αυστηροί και αξίζει να τους γνωρίζετε ακριβώς:
- Το
example.comεπιτρέπει ακριβώς αυτόν τον host και τίποτε άλλο. Δεν επιτρέπει τοwww.example.com. - Το
*.example.comεπιτρέπει κάθε subdomain τουexample.com, αλλά όχι το σκέτοexample.com. Για να καλύψετε έναν ιστότοπο και τα subdomains του, προσθέστε και τις δύο καταχωρίσεις. - Τα πεζά/κεφαλαία δεν έχουν σημασία και οι θύρες και μια τελεία στο τέλος αγνοούνται, οπότε το
Example.com:8080ταιριάζει με τοexample.com. - Η λίστα χωράει έως 100 καταχωρίσεις. Κενή λίστα σημαίνει ότι ο player μπορεί να ενσωματωθεί οπουδήποτε, κάτι που είναι η προεπιλογή.
- Γράφετε σκέτα ονόματα host. Αν επικολλήσετε κατά λάθος ολόκληρη διεύθυνση, διατηρείται μόνο ο host της.
Προσθέστε κάθε host όπου πραγματικά κάνετε ενσωμάτωση, μαζί με τα domains δοκιμών και προεπισκόπησης, πριν ενεργοποιήσετε τη λίστα. Ένα βίντεο που ξαφνικά δείχνει μήνυμα μη διαθεσιμότητας στον δικό σας δοκιμαστικό ιστότοπο είναι η πιο συνηθισμένη έκπληξη.
Τι δεν κάνει το κλείδωμα domain
Αυτός ο έλεγχος σταματά το περιστασιακό hotlinking: κάποιον που επικολλά το iframe σας στη σελίδα του. Δεν είναι όριο ασφαλείας και καλό είναι να ξέρετε γιατί. Ο έλεγχος βασίζεται στον referrer που στέλνει ο browser. Αν μια σελίδα αφαιρεί τον referrer, ο player δεν μπορεί να ξέρει πού είναι ενσωματωμένος και σε αυτή την περίπτωση δεν αποκλείει, γιατί αλλιώς οι ρυθμίσεις απορρήτου και οι πολιτικές referrer θα χαλούσαν νόμιμες ενσωματώσεις. Επίσης, ένας αποφασισμένος επισκέπτης που αντιγράφει την υπογεγραμμένη διεύθυνση της λίστας αναπαραγωγής από τον πίνακα δικτύου μπορεί να την παίξει αλλού μέχρι να λήξει, γιατί τα τμήματα ελέγχονται με βάση την υπογραφή του συνδέσμου και όχι τη σελίδα που τα ζητά. Ούτε η δημόσια σελίδα προβολής ενός βίντεο περιορίζεται από τη λίστα domains: όποιος έχει τον σύνδεσμό της μπορεί να την ανοίξει.
Σκεφτείτε λοιπόν τη λίστα ως φράχτη που κρατά έξω τους έντιμους γείτονες. Για ισχυρότερο έλεγχο σε μια ροή που σερβίρετε μόνοι σας, χρησιμοποιήστε υπογεγραμμένους συνδέσμους, που περιγράφονται παρακάτω. Αν χρειάζεστε το αντίθετο, ένα βίντεο που μόνο επιλεγμένα άτομα μπορούν να δουν, σημειώστε ότι το UFOLOAD δεν έχει ιδιωτικά βίντεο ούτε DRM· διαβάστε αυτοφιλοξενία έναντι δωρεάν πλατφορμών έναντι υπηρεσίας φιλοξενίας βίντεο πριν βασιστείτε σε αυτό για εμπιστευτικό περιεχόμενο.
Βήμα 2: αποκλείστε χώρες και διευθύνσεις IP
Οι κανόνες χωρών και IP εφαρμόζονται σε δύο σημεία: όταν ένας θεατής ανοίγει τη σελίδα προβολής ή ενσωμάτωσης και σε κάθε αίτημα για τη λίστα αναπαραγωγής και τα τμήματα στο επίπεδο παράδοσης. Οι έλεγχοι παράδοσης γίνονται για κάθε αίτημα και δεν αποθηκεύονται σε cache, οπότε ένας κανόνας που προσθέτετε ισχύει ήδη από το επόμενο τμήμα και όποιος έχει ήδη έναν σύνδεσμο δεν μπορεί να παρακάμψει τον κανόνα κρατώντας τον.
- Οι χώρες είναι κωδικοί δύο γραμμάτων ISO 3166-1 alpha-2 χωρισμένοι με κόμματα, για παράδειγμα
US, CN, RU. Η χώρα του θεατή προσδιορίζεται από τη διεύθυνση IP σε βάση δεδομένων γεωεντοπισμού. Κάθε λίστα χωράει έως 100 καταχωρίσεις. - Οι διευθύνσεις IP μπορεί να είναι μια μεμονωμένη διεύθυνση όπως
203.0.113.7ή μια μάσκα με αστερίσκο στην τελευταία οκτάδα όπως203.0.113.*, που καλύπτει ολόκληρο το εύρος των 256 διευθύνσεων. Οι διευθύνσεις IPv6 μπορούν να καταχωριστούν ακριβώς.
Δύο πρακτικές προφυλάξεις. Οι μάσκες είναι χοντροκομμένες: μια μάσκα .* σε δίκτυο κινητής ή γραφείου αποκλείει κάθε νόμιμο χρήστη πίσω της. Και η γεωγραφία με βάση το IP είναι τόσο ακριβής όσο τα δεδομένα διευθύνσεων πίσω της. Οι επισκέπτες μέσω VPN ή proxy εμφανίζονται εκεί όπου βρίσκεται ο κόμβος εξόδου, οπότε ο αποκλεισμός χώρας είναι τρόπος να μειώσετε την ανεπιθύμητη κίνηση ή να τηρήσετε καλή τη πίστει μια περιφερειακή άδεια, όχι εγγύηση.
Οι δικοί σας κανόνες δεν σας αποκλείουν όσο είστε συνδεδεμένοι ως μέλος του οργανισμού στον οποίο ανήκει το βίντεο, ούτε αποκλείουν το προσωπικό υποστήριξής μας. Αυτό είναι σκόπιμο, ώστε ο αποκλεισμός της δικής σας χώρας να μη σας κλειδώνει έξω από τη βιβλιοθήκη σας, αλλά σημαίνει επίσης ότι πρέπει να κάνετε δοκιμές από browser χωρίς σύνδεση ή από άλλο δίκτυο.
Υπογεγραμμένοι σύνδεσμοι για τον δικό σας player
Αν παίζετε τη ροή στη δική σας σελίδα με hls.js (δείτε ενσωμάτωση βίντεο HLS), η λίστα domains δεν εμπλέκεται, γιατί ο player δεν ζητά ποτέ άδεια από τη σελίδα του UFOLOAD. Ο έλεγχος προέρχεται από τον ίδιο τον σύνδεσμο. Το POST /api/v1/files/{id}/links εκδίδει συνδέσμους αναπαραγωγής και λήψης με διάρκεια ισχύος από 60 δευτερόλεπτα έως 30 ημέρες. Προσθέστε bind_ip για να δέσετε τον σύνδεσμο σε μία διεύθυνση IPv4 ή bind_cookie για να τον δέσετε σε μια τιμή cookie που ορίζει ο διακομιστής σας για τον επισκέπτη· η απάντηση τότε αναφέρει το cookie που πρέπει να συνοδεύει το αίτημα.
curl -X POST "https://ufoload.com/api/v1/files/FILE_ID/links" \
-H "Authorization: Bearer $UFOLOAD_API_KEY" \
-H "Content-Type: application/json" \
-d '{"ttl": 600, "bind_ip": "203.0.113.7"}'Μια σύντομη διάρκεια ισχύος σε συνδυασμό με δέσμευση είναι το ισχυρότερο διαθέσιμο εργαλείο: ένας σύνδεσμος που αντιγράφηκε από τη σελίδα σας είναι άχρηστος μέσα σε λίγα λεπτά και άχρηστος από οποιαδήποτε άλλη διεύθυνση. Το τίμημα είναι ότι πρέπει να εκδίδετε συνδέσμους από τον διακομιστή σας σε κάθε προβολή σελίδας, δηλαδή το μοτίβο που περιγράφουν ο οδηγός ανεβάσματος και API και η τεκμηρίωση API.
Domains λήψης
Οι players στα προγράμματα Pro και Max μπορούν να δείχνουν κουμπί λήψης. Μια ξεχωριστή λίστα, τα επιτρεπόμενα domains λήψης, λειτουργεί ακριβώς όπως η λίστα ενσωμάτωσης, αλλά ελέγχει ποιοι ιστότοποι μπορούν να ανοίγουν τη σελίδα λήψης σε frame. Αφήστε την κενή για να επιτρέψετε κάθε ιστότοπο. Οι επισκέπτες που ανοίγουν τη σελίδα λήψης απευθείας στο UFOLOAD δεν περιορίζονται, όπως και με τη σελίδα προβολής.
Βήμα 3: αποθηκεύστε και δοκιμάστε
- Αποθηκεύστε τις λίστες στην καρτέλα Πρόσβαση.
- Ανοίξτε μια σελίδα σε επιτρεπόμενο domain σε ιδιωτικό παράθυρο και επιβεβαιώστε ότι το βίντεο παίζει. Ελέγξτε και την παραλλαγή με subdomain.
- Ανοίξτε την ίδια ενσωμάτωση από ένα domain που δεν είναι στη λίστα, για παράδειγμα μια τοπική δοκιμαστική σελίδα από άλλο όνομα host, και επιβεβαιώστε ότι ο player δείχνει το μήνυμα μη διαθεσιμότητας.
- Για κανόνα χώρας ή IP, δοκιμάστε χωρίς σύνδεση, από δίκτυο που ταιριάζει με τον κανόνα αν έχετε.
- Κρατήστε την πολιτική referrer της δικής σας σελίδας σε μια λογική τιμή όπως
strict-origin-when-cross-origin. Μια πολιτικήno-referrerκρύβει τον host από τον player, ο οποίος τότε δεν μπορεί να εφαρμόσει τη λίστα.
Μαζί, μια λίστα ενσωμάτωσης και υπογεγραμμένοι σύνδεσμοι σύντομης διάρκειας καλύπτουν τις περισσότερες πραγματικές περιπτώσεις: το περιστασιακό hotlinking σταματά στην πόρτα και όποιος προχωρά παραπέρα πρέπει να κοπιάσει για έναν σύνδεσμο που λήγει. Όταν υπάρχουν διαθέσιμες διαφημίσεις και τις προβάλλετε στον player, ο οδηγός monetization εξηγεί τις μορφές διαφημίσεων και πώς προγραμματίζονται τα διαλείμματα. Η λίστα με όλα όσα διαθέτει ο player βρίσκεται στη σελίδα δυνατοτήτων και η λίστα ελέγχου για φιλοξενία βίντεο δείχνει ποιους ελέγχους πρόσβασης να απαιτείτε από κάθε πάροχο.
Ανεβάστε ένα βίντεο και αποκτήστε player HLS και κλειδί API μέσα σε λίγα λεπτά. Τα όρια των προγραμμάτων αναφέρονται στη σελίδα τιμών.