2011-02-10 16 views
5

Ho utilizzato il framework codeigniter sul mio localhost, ho chiamato alcuni dei miei modelli e controller utilizzando il metodo case cammello (UserModel, DbModel) su windows.Ora quando ho caricato i file sul server (eseguito su linux) lo script sta cercando di caricare tutti i file con caratteri minuscoli in modo da ottenere errori 404 perché lo script sta cercando usermodel non UserModel, un modo per aggirare questo problema?nome file in minuscolo e maiuscolo

risposta

7

Benvenuti nel club di implementazione 'incazzato di spl_autoload() paralizzato.

Si può sostanzialmente sia

1.Rinominare tutti i file in minuscolo

o

2.Write/trovare un caricatore automatico che cerca nomi di file corretto. Here's Symofony's ClassLoader Component che funziona benissimo.

0

Windows non memorizza i nomi dei file con distinzione tra maiuscole e minuscole. Dovrai rinominare i tuoi file sulla macchina Linux, o forzare tutti i riferimenti ai file in minuscolo.

+0

Windows (presumo che non si parli di edizioni XP precedenti: P) memorizza i nomi file con il caso corretto. Semplicemente non importa quale sia il caso, quando guarda il file. Quindi puoi salvare il file come "CamelCase.ext", ma se cerchi "CAMELcase.ExT" lo troverai. – Mchl

+0

Sono pronto per rinominare tutti i file, quindi ... – andrei

+1

Divertiti a rinominarli, potresti fare un semplice script in VBS per la tua macchina Windows per rinominare tutti i file in una directory specifica, chiamando LOWERCASE (nome file). Solo un pensiero. – Reallyethical

0

I nomi di file Linux sono case sensitive a differenza di Windows. Quindi devi essere esplicito in ciò che chiami. Cambia lo script per utilizzare il metodo Pascal Case che stai visualizzando sopra e funzionerà correttamente.

In alternativa, impostare un reindirizzamento nel proprio server Web per cercare la versione del caso Pascal Case.

Che lingua stai utilizzando e quale server web?

+0

Sto usando il server php è x86_64-unknown-linux-gnu – andrei

Problemi correlati