Miklix

Αντιστοιχίστε την τοποθεσία με βάση την επέκταση αρχείου με το NGINX

Δημοσιεύθηκε: 15 Φεβρουαρίου 2025 στις 1:40:59 π.μ. UTC
Τελευταία ενημέρωση: 12 Ιανουαρίου 2026 στις 8:35:40 π.μ. UTC

Αυτό το άρθρο εξηγεί πώς να κάνετε αντιστοίχιση μοτίβων με βάση τις επεκτάσεις αρχείων σε περιβάλλοντα τοποθεσίας στο NGINX, κάτι που είναι χρήσιμο για την επανεγγραφή URL ή για τον διαφορετικό χειρισμό αρχείων ανάλογα με τον τύπο τους.


Αυτή η σελίδα μεταφράστηκε μηχανικά από τα αγγλικά, προκειμένου να είναι προσβάσιμη σε όσο το δυνατόν περισσότερους ανθρώπους. Δυστυχώς, η αυτόματη μετάφραση δεν είναι ακόμη μια τελειοποιημένη τεχνολογία, οπότε μπορεί να προκύψουν λάθη. Αν προτιμάτε, μπορείτε να δείτε την πρωτότυπη αγγλική έκδοση εδώ:

Match Location Based on File Extension with NGINX

Οι πληροφορίες σε αυτήν την ανάρτηση βασίζονται στο NGINX 1.4.6 που εκτελείται σε Ubuntu Server 14.04 x64. Μπορεί να ισχύουν ή όχι για άλλες εκδόσεις.

Δεν είμαι και τόσο καλός στις κανονικές εκφράσεις (κάτι που μάλλον θα έπρεπε να δουλέψω, το ξέρω), οπότε συχνά χρειάζεται να το διαβάζω όταν πρέπει να κάνω κάτι περισσότερο από το πιο απλό, όπως η αντιστοίχιση μοτίβων, για παράδειγμα στο περιβάλλον τοποθεσίας του NGINX.

Μία πολύ χρήσιμη λειτουργία αν χρειάζεται να χειριστείτε συγκεκριμένους τύπους αρχείων διαφορετικά είναι η δυνατότητα αντιστοίχισης μιας τοποθεσίας με βάση την επέκταση του ζητούμενου αρχείου. Και είναι επίσης πολύ εύκολη, η οδηγία τοποθεσίας σας θα μπορούσε να μοιάζει απλώς με αυτό:

location ~* \.(js|css|html|txt)$
{
    // do something here
}

Φυσικά, μπορείτε απλώς να αλλάξετε τις επεκτάσεις σε ό,τι χρειάζεστε.

Το παραπάνω παράδειγμα δεν κάνει διάκριση πεζών-κεφαλαίων (για παράδειγμα, θα ταιριάζει και με τα .js και με τα .JS). Αν θέλετε να κάνει διάκριση πεζών-κεφαλαίων, απλώς αφαιρέστε το * μετά το ~.

Το τι θα κάνετε με την αντιστοίχιση εξαρτάται από εσάς. Συνήθως, θα την ξαναγράψετε σε ένα back-end που κάνει κάποιο είδος προεπεξεργασίας ή μπορεί απλώς να θέλετε να διαβάσετε τα αρχεία από φακέλους διαφορετικούς από αυτούς που φαίνονται στο κοινό, οι δυνατότητες είναι ατελείωτες ;-)

Μοιραστείτε το στο BlueskyΚοινή χρήση στο FacebookΚοινοποίηση στο LinkedInΜοιραστείτε το στο TumblrΚοινοποίηση στο XΚοινοποίηση στο LinkedInΚαρφιτσώστε στο Pinterest

Mikkel Christensen

Σχετικά με τον συγγραφέα

Mikkel Christensen
Ο Μιχαήλ είναι ο δημιουργός και ιδιοκτήτης του miklix.com. Έχει πάνω από 20 χρόνια εμπειρίας ως επαγγελματίας προγραμματιστής υπολογιστών/προγραμματιστής λογισμικού και σήμερα εργάζεται με πλήρη απασχόληση σε μια μεγάλη ευρωπαϊκή εταιρεία πληροφορικής. Όταν δεν ασχολείται με το ιστολόγιο, αφιερώνει τον ελεύθερο χρόνο του σε ένα ευρύ φάσμα ενδιαφερόντων, χόμπι και δραστηριοτήτων, τα οποία μπορεί σε κάποιο βαθμό να αντικατοπτρίζονται στην ποικιλία των θεμάτων που καλύπτονται σε αυτόν τον ιστότοπο.