ASP.NET URL Ξαναγράφοντας

ψήφοι
30

Πώς μπορώ να ξαναγράψει URL στο ASP.NET;

Θα ήθελα χρήστες να είναι σε θέση να goto http://www.website.com/users/smith αντί http://www.website.com/?user=smith

Δημοσιεύθηκε 05/08/2008 στις 14:14
πηγή χρήστη
Σε άλλες γλώσσες...                            


4 απαντήσεις

ψήφοι
23

Δοκιμάστε την διαχείριση Fusion Url Rewriter και Αντίστροφη μεσολάβησης:

http://urlrewriter.codeplex.com

Ο κανόνας για την επανεγγραφή αυτό θα ήταν:

# clean up old rules and forward to new URL
RewriteRule ^/?user=(.*)  /users/$1 [NC,R=301]

# rewrite the rule internally
RewriteRule ^/users/(.*)  /?user=$1 [NC,L]
Απαντήθηκε 05/08/2008 στις 14:18
πηγή χρήστη

ψήφοι
20

Scott Guthrie καλύπτει το πώς να το κάνουμε αυτό εγγενώς στην Καθαρή αρκετά εκτενώς εδώ .

Έχω χρησιμοποιήσει την προσέγγιση HttpModule και λειτουργεί καλά. Είναι βασικά αυτό που κάνει ManagedFusion για σας.

Απαντήθηκε 05/08/2008 στις 14:28
πηγή χρήστη

ψήφοι
5

Η Microsoft τώρα τα πλοία επίσημη URL Ξαναγράφοντας Ενότητα για το IIS: http://www.iis.net/download/urlrewrite

Υποστηρίζει τους περισσότερους τύπους ξαναγράφοντας συμπεριλαμβανομένου του καθορισμού των μεταβλητών server και μπαλαντέρ.

Επίσης θα υπάρχουν σε όλες τις Azure περιπτώσεις web έξω από το κουτί.

Απαντήθηκε 01/10/2010 στις 12:52
πηγή χρήστη

ψήφοι
4

Έχω χρησιμοποιήσει ένα HttpModule για URL Ξαναγράφοντας από www.urlrewriting.net με μεγάλη επιτυχία (αν και πιστεύω ότι πολύ νωρίτερα, απλούστερη έκδοση)

Αν έχετε πολύ λίγα πραγματικά κανόνες επανεγγραφής στη συνέχεια url αντιστοιχίσεις ενσωματωμένη στο .NET 2.0 είναι ίσως μια πιο εύκολη επιλογή, υπάρχουν μερικά πλάνα εγγραφής από αυτά στο διαδίκτυο, η 4guysfromrolla ένα φαίνεται αρκετά εξαντλητική, αλλά όπως μπορείτε να δείτε δεν το κάνουν υποστήριξη τακτική απεικονίσεις της έκφρασης είναι οι ως εκ τούτου καθίστανται αρκετά άχρηστο σε ένα δυναμικό περιβάλλον (υποθέτοντας ότι «smith» στο παράδειγμά σας δεν είναι μια ειδική περίπτωση τότε αυτά θα ήταν άχρηστο)

Απαντήθηκε 11/08/2008 στις 14:44
πηγή χρήστη

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more