É aconselhável forçar seu servidor web a analisar arquivos HTML para código PHP?

4

Eu não consigo me lembrar de qual site eu olhei e peguei esse boato, mas alguém sugeriu que você mantivesse o PHP analisando os arquivos .PHP, e não modificasse o htaccess do seu servidor Web para incluir a análise do PHP dentro dos arquivos .HTML.

Isso é verdade? Existe alguma razão geralmente aceita para fazê-lo de uma forma ou de outra?

    
por Coldblackice 02.03.2012 / 00:54
fonte

6 respostas

10

Eu diria que há dois pontos principais a considerar ao tomar essa decisão, ou qualquer outra, programação / configuração:

1. Comunicação:

Por padrão, os arquivos HTML são tratados apenas como HTML. A maioria dos desenvolvedores que entram no seu ambiente pode assumir uma configuração padrão. No entanto, se é uma prática geral para administradores de sistemas mudar isso, então esses desenvolvedores podem assumir que os arquivos HTML podem conter PHP.

Acredito que deixar arquivos HTML como somente HTML é uma ótima maneira de se comunicar com outros desenvolvedores que page1.html é um arquivo HTML puro. Isso pode tornar mais fácil para os novos membros da equipe fazer engenharia reversa de um projeto existente, se essa for a configuração usada. Neste caso, não há necessidade de abrir o arquivo para edição, basta olhar para a extensão do arquivo.

2. Isso poderia criar uma sobrecarga desnecessária?:

Digamos que você tenha vários arquivos HTML estáticos. Bem, agora seu servidor PHP terá que analisar seus arquivos HTML para procurar código PHP inexistente. Embora eu tenha certeza de que o Apache seja rápido o suficiente para que esse não seja um problema enorme e perceptível, ainda é algo potencialmente levado em consideração.

Resumo:

Em resumo, minha abordagem geral para o desenvolvimento é que, se não estiver quebrado, não conserte. Há muitas coisas que você pode fazer se você de fato precisa fazê-las, mas se você não tem uma razão muito strong para usar uma configuração não-padrão, então provavelmente não vale a pena o custo de deixar seu potencial sucessor com mal-entendidos ou confusão.

Com isso dito, não sou um desenvolvedor PHP profissional, portanto, fazer arquivos HTML passíveis de serem analisados pelo servidor pode ou não ser considerado um procedimento padrão. Eu optaria por ir com o que for mais fácil para outros desenvolvedores PHP que se juntarem a mim no meu projeto.

    
por 02.03.2012 / 03:11
fonte
6

Eu diria que sim é verdade. Eu não sei como provar que isso é geralmente aceito.

Idealmente, todos os seus arquivos .html não possuem código PHP, e você não deve fazer com que o servidor os analise para php.

Se por algum motivo você tivesse código php em arquivos .html, então obviamente você precisa tê-los analisados para php. Nesse caso, você deve considerar alterar esses arquivos para ".php", mas certifique-se de atualizar quaisquer referências a eles e fazer algum tipo de redirecionamento se os URLs deles forem públicos.

    
por 02.03.2012 / 01:10
fonte
4

Analisar HTML para tags PHP irá criar uma sobrecarga extra. Mas, a menos que você esteja falando de um site de tráfego razoavelmente alto, essa sobrecarga extra não terá um impacto perceptível no desempenho do site.

O maior problema pode ser a manutenção. O próximo cara saberá que há PHP nesses arquivos html? Se isso é um grande problema ou não dependeria da sua situação específica.

    
por 03.03.2012 / 07:19
fonte
2

analisar um arquivo .php para html no lado do servidor é apenas sobrecarga para servidor I / O eu acho que você queria perguntar sobre o cache de páginas web (isso irá reduzir a carga de rede, CPU, RAM no servidor se você tem grande número de solicitações da web que seu servidor não pode manipular)

por favor, dê uma olhada em web chaching aqui

    
por 03.03.2012 / 05:08
fonte
2

Do jeito que eu vejo, se você tiver escolha, mude a extensão do arquivo para .php, mas se você herdar um site e não quiser que todos os endereços sejam alterados quando você começar a incluir includes e o que não, então você pode tanto analisar o php dentro de arquivos html ou usar mod-rewrite para falsificá-lo. (Desde que você mencionou o .htaccess, eu continuo assumindo o Apache.)

A única vez que corri para causar problemas é que eu herdei um site que tinha tags XML (eu realmente não sei por quê) e as tags curtas do php estavam habilitadas, então ele tentou analisar XML como PHP. O que eu fiz para isso foi usado uma ferramenta de pesquisa / substituição para:

//change all the <?XML tags to 
echo'<?XML';

Na época, eu REALMENTE não sabia o que estava fazendo. Agora eu posso às vezes saber o que estou fazendo. ;)

    
por 03.03.2012 / 04:17
fonte
0

Eu diria que não mude, use .php.

Criar sobrecarga desnecessária para o servidor não é o principal problema. A manutenção pode ser um problema se outro cara gerencia as atualizações do servidor e não tem idéia de verificar se os arquivos .html pararam de funcionar por acaso - todos assumem que é estático.

O núcleo do problema é a segurança. Esta pequena exceção em .htaccess pode ser quebrada simplesmente mudando o nível de comandos permitidos em .htaccess ou por AllowOverride Nenhuma diretiva em qualquer lugar nas pastas acima. Se algo assim acontecer e o arquivo php não for analisado, todo o seu código ficará visível instantaneamente. Todas as suas inclusões e, eventualmente, todas as senhas podem se tornar visíveis publicamente para todos ... e também podem ser armazenadas em cache pelos mecanismos de pesquisa.

    
por 28.10.2015 / 00:20
fonte

Tags