Come configurare facoltativo o & # 8220; estraneo & # 8221; URL?
-
05-07-2019 - |
Domanda
Come configurereste / gestireste entità URL estranee / opzionali (alias, forse)?
SO è un buon esempio:
- stackoverflow.com/questions/99999999 /
- stackoverflow.com/questions/99999999/ domanda-va-qui (cattivo esempio, ma non potevo pensare di meglio)
Gli URL di Amazon sono ancora più confusi (ad esempio, Kindle )
- amazon.com/gp/product/B000FI73MA /
- amazon.com/ Kindle-Amazzoni-Wireless-lettura-dispositivo / dp / B000FI73MA /
[ MODIFICA ] Questo probabilmente non è il miglior piano d'azione, ma lo sto chiedendo davvero in generale rispetto a un singolo server.
Soluzione
Questa tecnica è comunemente nota come riscrittura degli URL. Se stai cercando una soluzione in IIS, puoi utilizzare ISAPI rewrite , che è abbastanza simile a mod_rewrite per apache. Altrimenti, puoi scegliere meccanismo ASP.Net MVC .
Altri suggerimenti
Se usi Apache, dai un'occhiata a mod_rewrite
Qualcosa del genere (se si configurano manualmente gli URL):
RewriteRule ^([^\/]+)\/([^\/]+)\/(.*) index.php?controller=$1&view=$2&args=$3
Altrimenti lascio che il framework MVC lo gestisca e taylor gli argomenti del controller come appropriato.
mod_rewrite è spesso usato, almeno sotto Linux con Apache.
Questa è un'attività per la tua app web, non per il tuo server web.
Su URL = > mappature di file, come PHP (o server web statici) è complicato; ma sui framework MVC è abbastanza naturale, anche sui framework MVC PHP.