mod_rewrite Semplice e sito web struttura dir
-
19-09-2019 - |
Domanda
Sto facendo un sito con album di foto per gli agenti. Ogni agente ha la sua cartella con file css. Ogni agente ha dir cartelle album con css e index.php
/example.com/
/agent001/
agent001.css
/000005/
index.php
main.css
/photos/
aaa.jpg
bbb.jpg
/000006/
index.php
...
/agent002/
agent002.css
/000009/
...
Quindi, il percorso 000005 album di agente sarebbe: /agent001/000005/index.php
Voglio una scorciatoia come: /000005/
che inoltra al /agent001/000005/some-title-here
Un'altra cosa che non posso davvero ottenere la mia testa intorno è la mia struttura dir. Ho davvero bisogno le cartelle degli agenti e degli album per organizzare la mia roba. Ma index.php e main.css sono tutti uguali, dovrei spostare questi file alla radice?
Qualsiasi aiuto molto apprezzato!
Soluzione
Questo non è possibile con mod_rewrite. Si avrebbe bisogno di qualche programma che cammina attraverso l'agente Elenchi un verifica se c'è una cartella con quel nome.
Ma oltre a questo i tuoi URL brevi non sarebbero distinti più. Perché come Max S. ha detto in commenti , come dovrebbe essere mappati /000005/
se più di un agente ha un album “ 000005” ? O è questo valore unico per tutti gli agenti?
E utilizzando un'istanza centrale del index.php e main.css è la scelta migliore per evitare la ridondanza e complessità. In questo caso è possibile utilizzare mod_rewrite per riscrivere le richieste ai file centrali come:
RewriteRule ^[^/]+/[^/]+/index\.php$ /index.php