É seguro ter informado o servidor Apache para lidar com arquivos .js e .css como PHP?

Com base em uma resposta que vi nesta questão: Link

Estou me perguntando, isso é uma coisa segura a fazer?

Suponha que eu implementei isso e uma página é solicitada que tenha um par de arquivos JS e CSS ligados a ele. Os arquivos de texto são simplesmente enviados ou o servidor primeiro os analisa? Não tem um servidor para testá-lo agora.

Além disso, este é um método comum de trabalho? Estou pensando que configurar seus arquivos para que você sempre obtenha a implementação correta com base na input do usuário pode ser bastante difícil quando se trata de CSS e JavaScript.

Para CSS dynamic e Javascript, você não precisa “tê-los em arquivos .js ou .css. O que você pode fazer, na verdade, é um link para um script PHP que os gera para que todos os outros arquivos .js e .css que não sejam dynamics não sejam analisados ​​pelo PHP. Geralmente, é uma má idéia executar tudo, especialmente arquivos de mídia, através de um servidor de aplicativos / análise dinâmica, a menos que seja absolutamente necessário (o mesmo acontece com .net, RoR, Django, etc.).

 

O navegador trata o mesmo que:

  // this one would be dynamic on params, location or something else maybe colors etc. 

Você também pode tirar js ou css dynamic e empurrá-lo para rewrite para que ele tenha a extensão correta, mas é realmente um arquivo php que é dynamic também se você não deseja que seus links e tags de script tenham extensões incorretas.

Não é seguro, a menos que você esteja permitindo que os usuários façam upload de arquivos css / js.

Não é comum, por padrão, o Apache trata os arquivos .js e .css como arquivos estáticos, o que significa que ele não faz nenhum processamento extra, apenas os envia.

Você pode configurar o apache para funil arquivos de qualquer extensão através de algum tipo de programa (como PHP), mas é incomum para imagens, css e outros arquivos estáticos.

Um grande problema com isso é que isso prejudicaria seriamente a capacidade do Apache para orientar os headers de armazenamento em cache – trata os arquivos estáticos tanto mais facilmente armazenados em cache do que os arquivos php.

Eu certamente nunca faria isso. Eu também posso questionar por que eles são geradores de javascript em uma quantidade tão grande. Esta resposta é muito mais viável como um método de customização do comportamento de JavaScript.

Enquanto os arquivos .css e .js que estão vinculados estiverem em um servidor diferente, ele deve ser seguro. Tudo o que você está dizendo que o apache faz é tratar arquivos .css e .js como php para os arquivos que ele serve.