Onko tämä turvallinen ja oikea tapa CSS:n tarjoamiseksi selaimelle:
<?php header("Content-type: text/css"); $files = array(); $files["1e6134544abcdb677b27f4d4ad1432b7"] = "bootstrap.css"; print file_get_contents($files[$_GET['id']]); ?>
Riippuu vähän mitä tällä PHP:n kautta pyöräyttämisellä haetaan. Eli miksi?
Tuossa on tarkoituksena keskittää useiden sivustojen CSS samaan paikkaan. Eli kun Bootstrap päivittyy uuteen versioon, saan muutoksen suoritettua kaikille sivustoille yhtä tiedostoa muuttamalla.
Miksi päivittäisit Bootstrappin kaikille sivustoillesi, jos se toimii oikein kaikilla niistä? Se on aivan turhaa. Uuteen versioon päivittäessä otat myös sen riskin, että vanhat sivut eivät enää toimikaan.
Skriptien bundlaamisessa on minusta se hyöty, että jos saman moottorin päällä on useita eri sivustoja, ja moottoriin halutaan tehdä päivitys, joka vaatii uuden kirjaston lisäämisen sivustoille, niin jokaisen saitin html:ään ei tarvitse käydä lisäämässä includeja, vaan riittää että se lisätään se tuohon bundleen mukaan. Samoin jos on pakko saada vanha kirjasto päivitettyä siitä syystä, että halutaan käyttää jotain uutta ominaisuutta.
Tämä on silti eri asia kuin päivittää toisistaan irrallisia projekteja yhdellä kertaa.
Bootstrapin uudet versiot monesti parantavat mm. mobiililaitteiden yhteensopivuutta. Toki testaan sivustot uuden version päivittämisen jälkeen. Kysymys on vain, että onko tuo koodi hyvä hoitamaan asian.
Olli kirjoitti:
Eli kun Bootstrap päivittyy uuteen versioon, saan muutoksen suoritettua kaikille sivustoille yhtä tiedostoa muuttamalla.
Eikös sen voi tehdä suoraankin laittamalla bootstrap.css:n vaikka olli.com -palvelimen hakemistoon css ja viittaamalla sivuilta siihen osoitteella http://olli.com/css/bootstrap.css ? Miten tämä eroaa siitä että kaikilta sivuilta viitataan osoitteeseen http://olli.com/css.php?id=1e6134544abcdb677b27f4d4ad1432b7 ?
Olli kirjoitti:
Kysymys on vain, että onko tuo koodi hyvä hoitamaan asian.
Ja minun kysymys oli vain, että mitä asiaa sen koodin olisi tarkoitus hoitaa. Eli mitä PHP:n kautta kierrättämisellä tavoitellaan?
No voisihan sen tuollakin lailla tietysti tehdä.
Olli kirjoitti:
No voisihan sen tuollakin lailla tietysti tehdä.
Niin, voihan sen tietenkin tolleenkin tehdä, jos haluaa tehdä sen *helposti*...
Aihe on jo aika vanha, joten et voi enää vastata siihen.