PHP Classes

File: conf/uri.default.conf.php

Recommend this page to a friend!
  Classes of Fernando Val   Springy   conf/uri.default.conf.php   Download  
File: conf/uri.default.conf.php
Role: Auxiliary script
Content type: text/plain
Description: Auxiliary script
Class: Springy
Microframework for Web application development
Author: By
Last change: v4.2.2
Deprecating css_dir uri conf
Deprecating swf_dir uri conf
Deprecating swf_dir URI conf
Deprecating js_dir URI config
Date: 5 years ago
Size: 5,278 bytes
 

Contents

Class file image Download
<?php
/** \file
 * \brief Configurations for Springy\URI class.
 * \copyright Copyright (c) 2007-2016 Fernando Val
 * \warning Este arquivo é parte integrante do framework e não pode ser omitido.
 */

/**
 * \defgroup uricfg Configurações da classe de tratamento de URI/URL
 * \ingroup config.
 *
 * As entradas de configuração dos arquivos \c uri, são utilizadas pela classe URI, sendo que as entradas previamente definidas não podem ser omitidas
 * sob risco de dano à aplicação.
 *
 * Você poderá adicionar entradas personalizadas de sua aplicação.
 *
 * Exemplo de código PHP de como usar a entrada \c 'register_method_set_common_urls':
 *
 * \code{.php}
 * $conf = [
 * 'register_method_set_common_urls' => [
 * 'class' => 'Url1',
 * 'method' => 'setCommon',
 * 'static' => true
 * ], // executa: Url1::setCommon()
 * ];
 * $conf = [
 * 'register_method_set_common_urls' => [
 * 'class' => 'Urls',
 * 'method' => 'setCommon',
 * 'static' => false
 * ], // executa: (new Urls())->setCommon()
 * ];
 * $conf = [
 * 'register_method_set_common_urls' => [
 * 'class' => 'Urls',
 * 'static' => false
 * ], // executa: new Urls()
 * ];
 * \endcode
 *
 * Entradas de configuração:
 * - 'routes' - Array contendo rotas de controladoras. Útil para utilizar mais de uma URL apontando para mesma controladora.
 * - 'redirects' - Array de redirecionamentos. Útil para configurar redirecionamentos a acessos que possam causar erro de página não encontrada.
 * - \c 'prevalidate_controller' - Validação prévia de formatação de URI para determinadas controladoras
 * - \c 'system_root' - URI da página inicial
 * - \c 'common_urls' - Essa entrada é um array de URLs comuns da aplicação que irão gerar variáveis de template.\n
 * Cada entrada do array contém uma variável de template, onde o índice é uma string contendo o nome da variável e o valor
 * é um array podendo conter de um a todos os parâmetros necessários para construção da URL,
 * conforme a ordem do método buildURL da classe URI.\n
 * Logo: cada índice do array conterá a seguinte informação, respectivamente:
 * índice 0 (zero) => array de segmentos da URL;
 * índice 1 => array da query string;
 * índice 2 => boleano para o parâmetro forceRewrite;
 * índice 3 => entrada de configuração host;
 * índice 4 => booleano para o parânetro include_ignores_segments.
 * - 'redirect_last_slash' - Valor boleano que determina se a aplicação deve redirecionar requisições a URIs terminadas em barra (/) para URI semelhante sem a barra no final.
 * Útil para evitar conteúdo duplicado em ferramentas SEO.
 * - 'force_slash_on_index' - Força o uso de barra (/) ao final da URL para o primeiro segmento (index).
 * Se a URL acessada for da página principal (index) e não houver a barra ao final, faz o redirecionamento para a URL com / ao final.
 * Esse parâmetro invalida 'redirect_last_slash' para a página principal.
 * - 'ignored_segments' - Quantidade de segmentos iniciais que devem ser ignorados na descoberta da controladora.
 * Útil para sites onde alguns dos segmentos iniciais servem para algum parâmetro a ser passado para a aplicação, como por exemplo para determinar
 * idioma, localização ou setor. Por exemplo: http://www.seusite.com/pt-br/pagina
 * - 'host_controller_path' - Array de hosts que possuem nível próprio de controladoras.
 * - 'dynamic' - Host do conteúdo dinâmico do site. Ex.: 'http://www.seusite.com'
 * - 'static' - Host do conteúdo estático do site. Ex.: 'http://cdn.seusite.com'
 * - 'secure' - Host seguro do site. Ex.: 'https://www.seusite.com'
 *
 * \see config
 *
 * @{
 * @}
 */

/**
 * \defgroup uricfg_default Configurações da classe de tratamento de URI/URL para todos os ambientes
 * \ingroup uricfg.
 *
 * As entradas colocadas nesse arquivo serão aplicadas a todos os ambientes do sistema.
 *
 * Veja \link uricfg Configurações da classe de tratamento de URI/URL \endlink para entender as entradas de configuração possíveis.
 *
 * \see uricfg
 */

/// Configurações para todos os ambientes
$conf = [
   
'routes' => [
       
'home(\/)*(\?(.*))*' => ['segment' => 0, 'controller' => 'index'],
    ],
   
'redirects' => [
       
'404' => ['segments' => [], 'get' => [], 'force_rewrite' => false, 'host' => 'dynamic', 'type' => 301],
    ],
   
'prevalidate_controller' => [
       
'mycontroller' => ['command' => 301, 'segments' => 2],
       
'myothercontroller' => ['command' => 404, 'segments' => 2, 'validate' => ['/^[a-z0-9\-]+$/', '/^[0-9]+$/']],
    ],
   
'system_root' => '/',
   
'register_method_set_common_urls' => null,
   
// URLs comuns do site
   
'common_urls' => [
       
'urlAssets' => [['assets'], [], false, 'static', true],
       
'urlHome' => [[]],
       
'urlLogin' => [['login'], [], false, 'secure', true],
       
'urlLogout' => [['logout'], [], false, 'secure', true],
    ],
   
'redirect_last_slash' => true,
   
'force_slash_on_index' => true,
   
'ignored_segments' => 0,
   
'assets_dir' => 'assets',
];