Baixe o app agora e teste gratuitamente por 10 dias
Moeda Selecionar idioma Selecionar região

1. Carregar scripts de segurança

No início, o CMS bluetronix carrega os scripts relacionados à segurança. Isso inclui o Secure Check, a verificação do número de chamadas, a preparação ou verificação de parâmetros MySQL, bem como a análise de parâmetros GET e POST.

Verificações que não requerem conexão com o banco de dados são realizadas neste ponto.

2. Carregar configuração do módulo

Se disponível, o arquivo /bx_Mod/config_own.php é carregado. Os scripts e variáveis de configuração definidos nele estão disponíveis desde o início do processo de renderização.

Iniciar sessão 3.

O CMS inicia a sessão PHP com @session_start();. Nesse caso, três variáveis de sessão são especialmente importantes: $_SESSION["S_User"] para o usuário do CMS ou modo de edição, $_SESSION["S_Language"] para o idioma atual e $_SESSION["Web_User"] para o usuário de um login no frontend.

Carregar parâmetros da página 4.

Em seguida, o CMS lê informações sobre a chamada atual das variáveis do servidor. $domain recebe o nome do domínio de $_SERVER["SERVER_NAME"], $FileParameter o caminho da requisição incluindo parâmetros GET de $_SERVER["REQUEST_URI"] e $file o caminho do arquivo executado de $_SERVER["PHP_SELF"].

$ReferURL contém o valor de $_SERVER["HTTP_REFERER"], caso tenha sido transmitido. Ele pode, por exemplo, ser utilizado ao recarregar frames ou seções da página.

Estabelecer conexão com o banco de dados 5.

O CMS estabelece automaticamente a conexão com o banco de dados. Após isso, as tabelas do banco de dados do CMS ficam disponíveis para novas verificações e para carregar o conteúdo das páginas.

Verificar novamente os parâmetros GET e POST 6.

Após a criação da conexão com o banco de dados, o CMS chama SECUREGetPost();. Os parâmetros GET e POST fornecidos são verificados novamente e, se necessário, ajustados. Agora, as verificações que necessitam de informações do banco de dados também são possíveis.

Redirecionamentos de domínio, edição e idioma 7.

Dependendo da configuração do CMS, do domínio acessado, do modo de edição, da língua escolhida e dos parâmetros de chamada, pode ocorrer um redirecionamento. Os destinos possíveis são o domínio principal, o domínio de edição, bem como domínios ou URLs dependentes do idioma.

Redirecionamento HTTPS 8.

Se o site foi acessado sem HTTPS, ocorrerá um redirecionamento para a versão SSL ou HTTPS da página.

Carregar scripts PHP centrais 9.

Agora, o CMS carrega suas funções PHP centrais. Isso inclui, por exemplo, BlueSMTPMail() para envio de e-mails e BlueFormSend() para processamento de formulários. Outras funções centrais também serão carregadas.

Carregar dados da página de 00_site 10.

Os dados da página solicitada são lidos da tabela do banco de dados 00_site. Nessa etapa, variáveis do CMS como $Template são determinadas.

Além disso, $LayoutHTML e $SitePHP são inicializados. $LayoutHTML conterá posteriormente o layout HTML completo, enquanto $SitePHP conterá o código PHP diretamente relacionado à página acessada.

Carregar layout de 00_layout 11.

O layout associado à página é carregado da tabela do banco de dados 00_layout e forma a base para o processamento adicional em $LayoutHTML.

Definir arquivos JavaScript dependentes do idioma 12.

Se houver arquivos específicos de idioma, o CMS pode substituir os arquivos padrão BxScript.js e BxHeadScript.js por variantes de idioma adequadas, como BxScript_pt.js ou BxScript_en.js.

As marcas de arquivo __FV_/bx_script/BxScript_own_min.js__ ou __FV_/bx_script/BxHeadScript_own_min.js__ são ajustadas no layout.

Gerar cabeçalho e conteúdos dinâmicos 13.

Agora, conteúdos dinâmicos são gerados e scripts PHP específicos da página são executados. DynMenue() gera menus dinâmicos, IncludeModul() inclui módulos configurados e EditMARK() define as marcas de edição do CMS.

Com eval($SitePHP), o código PHP da página atual é executado; eval($IncludePHP) executa scripts PHP incluídos.

Definir parâmetros de alteração para CSS e JavaScript 14.

Para arquivos CSS e JavaScript, um parâmetro de modificação é definido. Assim, o navegador pode carregar uma nova versão em vez de usar um arquivo desatualizado do seu cache.

Por exemplo, a partir de uma referência de arquivo como /css/style.css, pode-se obter uma chamada com um parâmetro de versão como /css/style.css?v2026....

Definir modo escuro ou claro 15.

O CMS lê o modo de apresentação configurado em /bx_style/BxSource/CSSEditDarkLight.bx. Dependendo do conteúdo do arquivo, o modo escuro ou claro é definido no layout.

Definir variáveis de configuração do módulo no layout 16.

A configuração do módulo de /bx_Mod/config_own.php é aplicada ao layout. Se, por exemplo, o módulo de loja, pesquisa, login ou tradução estiver desativado, os elementos de controle associados podem ser ocultados automaticamente.

As marcas de layout como __DB_GB_DesktopIconBasket_Display__, __DB_GB_DesktopIconSearch_Display__, __DB_GB_DesktopIconLogin_Display__ ou __DB_GB_DesktopIconLang_Display__ são substituídas por nenhum.

Remover marcas de substituição restantes 17.

Marcadores do CMS não substituídos são removidos do HTML final. Isso inclui, entre outros, marcas seguindo os padrões __DB_...__ e __ST_...__ e as marcas internas xxx de comentários designadas para isso.

Remover comentários HTML 18.

O CMS, em seguida, remove comentários HTML de $LayoutHTML. Assim, texto de comentário desnecessário não é enviado ao navegador.

Executar tradução de idioma 19.

Se $_SESSION["S_Language"] não for igual a $GBMainLang, os textos marcados são traduzidos para o idioma atualmente utilizado. As traduções são obtidas da tabela do banco de dados Translation.

Se um texto necessário ainda não estiver presente lá, uma nova entrada na Translation será gerada. O CMS identifica conteúdos traduzíveis com base nas marcas My Text e My Text.

Substituir chamadas de imagem por IMG.pl 20.

Chamadas de imagem e cortes de imagem via IMG.pl são substituídas por arquivos de imagem previamente gerados ou otimizados. A página HTML final pode, assim, acessar diretamente essas variantes de imagem.

Gerar página final 21.

Após a conclusão do processamento, $LayoutHTML é enviado ao navegador com o tipo de conteúdo text/html; charset=utf-8, por exemplo, através de print $LayoutHTML;.

Para domínios não ativados ou internos, a saída é marcada com noindex, nofollow para que essas páginas não sejam indexadas pelos motores de busca.

Escrever cache 22.

Após a saída da página, o CMS pode armazenar a página gerada em cache. A condição é que nenhum S_User esteja logado, a página não esteja no modo de edição e o cache esteja ativado para esta página.

Em chamadas posteriores, a página HTML armazenada pode ser usada sem a necessidade de executar novamente todo o processo de renderização.

FAQ

o que os clientes nos perguntam frequentemente

O que é o processo de renderização do site?

O tutorial se refere aos passos de processamento com os quais o CMS bluetronix gera a página HTML final a partir de dados de páginas e layout e a entrega ao navegador.

Quais verificações de segurança ocorrem antes da conexão com o banco de dados?

Antes da conexão com o banco de dados, são realizadas, entre outras, verificações de segurança, a contagem de chamadas, a preparação de parâmetros MySQL e a análise de parâmetros GET e POST.

Quando a configuração do módulo é carregada?

O arquivo /bx_Mod/config_own.php é carregado, se existir, antes do início da sessão e da construção da conexão com o banco de dados.

Para que servem S_User, S_Language e Web_User?

S_User refere-se ao usuário do CMS ou ao modo de edição, S_Language é o idioma atual da página da web e Web_User é o usuário de um login no frontend.

De quais tabelas de banco de dados provêm página e layout?

Os dados da página são carregados de 00_site. O layout correspondente é lido de 00_layout e processado em $LayoutHTML.

Quando o código PHP de uma página é executado?

Na geração do cabeçalho e conteúdos dinâmicos, o código próprio da página é executado por meio de eval($SitePHP) e o código PHP incluído por eval($IncludePHP).

Quando arquivos JavaScript dependentes do idioma são utilizados?

Se versões de idiomas adequadas estiverem disponíveis, BxScript.js e BxHeadScript.js podem ser substituídos pelos arquivos específicos para o idioma correspondente.

Como é determinado o modo escuro ou claro?

O CMS lê o arquivo /bx_style/BxSource/CSSEditDarkLight.bx e define o modo de exibição no layout com base em seu conteúdo.

Quando os textos são traduzidos automaticamente?

Se o idioma atual for diferente de $GBMainLang, os textos marcados são traduzidos com base nas entradas na tabela Translation.

Sob quais condições a página final é armazenada em cache?

O cache pode ser escrito se nenhum S_User estiver logado, a página não estiver no modo de edição e o cache estiver ativado para esta página.

CMS