Dicas básicas de configuração do CodeIgniter

13 de setembro de 2010, em Dicas, por

Dicas básicas de configuração do CodeIgniter

Algumas vezes, em projetos feitos com CodeIgniter, é preciso realizar operações relativamente corriqueiras mas, principalmente quando se está começando a mexer com o framework, ainda não se tem confiança nem a “malandragem” de alterar/criar determinadas personalizações.

Este artigo aborda 5 dicas básicas do CodeIgniter que poderão salvar sua pele:

  • Remover “index.php” do URL
  • O diretório “application”
  • Mover o diretório “system”
  • Usar um diretório “views” alternativo
  • Diretório para imagens, estilos, javascript e outros

Este artigo é altamente inspirado no post “CodeIgniter Configuration Tips For Beginners“, do Moray Web Solutions.

Remover “index.php” do URL

Como remover o index.php do URI é algo já bastante discutido (inclusive no artigo sobre URLs no Codeigniter) e que pode ser feito através de jeitos diferentes; mas é interessante incluir esta dica, também, para que o artigo tenha várias boas dicas em um só lugar.

Retirar o “index.php” do endereço de seus sites ou softwares feitos com CodeIgniter é uma das primeiras coisas que devem ser feitas quando se está configurando uma instalação do CI para um novo projeto, e é realmente simples de se fazer! Aliás, seria bastante interessante se, em versões futuras do framework, já houvesse um arquivo .htaccess padrão juntamente com o framework. Realmente facilitaria bastante…

Então, para excluir o segmento “index.php” das URLs no CodeIgniter, é preciso fazer 2 coisas. A primeira delas é editar o arquivo /system/application/config/config.php, alterando o valor da diretiva index_page para vazio:

1
$config['index_page'] = '';

A segunda etapa é a criação de um arquivo “.htaccess” (com um pontinho na frente, mesmo) na raiz de sua instalação do CodeIgniter. Como mencionado, existem diversas configurações diferentes para se alcançar o mesmo objetivo; para facilitar as coisas, coloquemos no exemplo o que é recomendado no Guia do Usuário Oficial do CodeIgniter. Portanto, depois de ter criado seu arquivo .htaccess, escreva o seguinte nele:

1
2
3
RewriteEngine on
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteRule ^(.*)$ index.php/$1 [L]

E é só isso! A partir de agora, os URLs de seu site/sistema feitos com CodeIgniter não terão mais o segmento (chamado de “irritante” por alguns) “index.php”.

O diretório “application”

Com o lançamento do CodeIgniter 2, esta dica não é mais tão útil assim…

Muitos desenvolvedores preferem mover a pasta “application” para fora da pasta fora da pasta “system” – prática, inclusive, da qual sou adepto. É interessante a abordagem de fazer uma separação mais evidente do código da aplicação do core do framework, embora oferecendo oportunidades para continuar a reforçar a segurança.

Não há nada especial que seja preciso fazer; basta mover a pasta “application” para fora da pasta “system”.

Então, a “nova” estrutura de diretórios fica:

  • /application
  • /system
  • /index.php

É possível, também, mudar o nome da pasta da aplicação para algo mais significativo. Geralmente, quem usa esta abordagem faz isso, em parte, por trabalhar simultaneamente em uma série de projetos e, dessa forma, isso ajuda a descobrir mais facilmente onde se está. Outra razão pela qual isso pode ser útil é quando se pretende executar várias aplicações usando somente uma instalação do CodeIgniter – este é um tema que pode ser abordado em artigos futuros.

Em primeiro lugar, é preciso renomear a pasta “application” para o nome que se queira. Então, é preciso alterar o arquivo “index.php” que se encontra na raiz da instalação do CI. Basta procurar a variável $application_folder e digitar o novo nome para a pasta do aplicativo.

1
$application_folder = "meuSistemaCI"; // nome fictício...

Para garantir, vale a pena navegar por seu software e fazer uma verificação rápida para conferir se tudo ainda está funcionando bem! :-P

Mover o diretório “system”

Esta é uma medida que pode ser tomara para aumentar a segurança de sua aplicação CodeIgniter. A ideia é mover a pasta “system” para um nível em que fique fora da área pública da instalação padrão, consequentemente, ficando “fora de perigo”.

É preciso conhecer a estrutura de diretórios de seu servidor para fazer a mudança e o apontamento correto para a nova localização. Como exemplo didático, tomemos o uso do WampServer para a instalação do CI. Nessas condições, a nova estrutura de pastas ficaria da seguinte maneira (nomes também ilustrativos):

  • www/system/
  • www/projectfolder/newappname/
  • www/projectfolder/index.php

Agora é necessário alterar a variável $system_folder do arquivo “index.php”, na raiz da instalação, para refletir essa mudança:

1
$system_folder = "../system";

Frisando: é preciso conhecer a estrutura de diretórios para fazer a correta referência à pasta “system”. Depois da mudança, faça uma verificação rápida para conferir se tudo ainda está funcionando como deveria.

Usar um diretório “views” alternativo

Apesar de não ser uma prática tão utilizada dentre os desenvolvedores CodeIginter (eu, pelo menos, não vejo sem feito com frequência), é possível usar um diretório alternativo para “views”. Quem usa esta técnica alega que a separação de código e interface fica mais fácil, já que o diretório das views não fica “afundado” em uma estrutura de muitos subdiretórios. Então, eles se valem disso para poder ter a pasta no diretório raiz.

Crie a pasta na raiz, como faria normalmente. Para o exemplo, a pasta pode ser “templates”, mas, claro, você dá o nome que quiser.

A fim de o CI reconhecer esse novo diretório como o padrão para as views, é preciso estender uma das bibliotecas do core do framework. O CodeIgniter é tão fantástico que, por padrão, permite estender facilmente suas funções nativas (o que facilita bastante o serviço e evita alterar o código fonte original).

Primeiro, é preciso criar uma nova biblioteca dentro da pasta “application” (ou talvez você tenha alterado o nome dela usando a dica anterior!), que precisa ser nomeada apropriadamente para que o CI a reconheça! Ele deve ser chamado “MY_Loader.php” e conter o seguinte:

1
2
3
4
5
6
7
Class MY_Loader extends CI_Loader {
    function MY_Loader()
    {
    	parent::CI_Loader();
    	$this->_ci_view_path = 'templates/';
    }
}

Atenção! Antes de continuar, lembre-se de mover todos as views existentes para o novo diretório! Do contrário, você será premiado com uma família inteira de erros!

Diretório para imagens, estilos, javascript e outros

Geralmente é bom ter diretórios próprios para imagens, folhas de estilo, javascript e demais recursos necessários para o desenvolvimento de sites/sistemas. Se for em um local unificado ao invés de espalhar os “assets” pela estrutura de diretórios do CodeIgniter, então, é melhor ainda!

Fazer isso é algo simples e existem diversas maneiras de se conseguir. Uma dessas maneiras (pesquise para encontrar mais, vale a pena) é ter um diretório “assets” na raiz da instalação com subdiretórios para cada tipo de recurso que se precise:

  • /assets
    • /css
    • /img
    • /js
    • [etc]

Então, para fazer as chamadas aos recursos, basta fazer como:

1
2
3
4
5
6
7
8
// Fazer link para um css (precisa do HTML Helper)
echo link_tag('assets/css/styles.css') . "\n";
 
// Especificar caminho de uma imagem
<img src="<?php echo base_url() . 'assets/img/image.jpg' ?>" alt="alt text" />
 
// Link para um javascript
<script type="text/javascript" src="<?php echo base_url() . 'assets/js/jquery.js' ?>"></script>

Mãos à obra!

Como falado diversas maneiras durante o artigo, existem muitos jeitos para se alcançar os mesmos resultados apresentados aqui. Estas dicas são excelentes, mas não são as únicas a serem realizadas. Certamente são boas dicas e, caso você tenha necessidade de aplicar alguma(s) técnica(s) mostrada, já sabe uma das maneiras de conseguir.

O jeito é experimentar e experimentar, procurar outras dicas similares e, com o tempo e experiência, criar suas próprias maneiras de facilitar o fluxo do CodeIgniter (que já é simples, diga-se de passagem) e aprimorar dicas de outras pessoas. Os conceitos de “comunidade” e “colaboração” tem a ver com isso, meus amigos!

E você, tem alguma boa dica de configuração do CodeIgniter para compartilhar?

70 comentários em "Dicas básicas de configuração do CodeIgniter"

gravatar

Daniel Bastos  em 14 de setembro de 2010

Bom dia,

Meus parabéns pelo ótimo artigo!! O assunto é de interesse de todos os desenvolvedores web que utilizam este grande framework que é o CodeIgniter.

Feito, um abraço.

gravatar

Ivan  em 15 de setembro de 2010

Muito bons seus artigos … apenas sinto falta de um sistema de layout que o codeigniter n disponibiliza igual ao cakephp.

gravatar

João Paulo  em 15 de setembro de 2010

Muito boa as dicas.
Gostaria de saber onde encontro os melhores cursos pagos para codeigniter Nacional?

Obrigado

gravatar

Paulo  em 16 de setembro de 2010

Legal! Realmente são dicas básicas… mas que ajuda muito quem está iniciando no codeigniter.

Uma coisa que adotei na hora de linkar imagens, css e js… invés de usar a função base_url() eu simplesmente começo com uma barra no inicio… assim:

mesmo que eu enteje numa página aonde o endereço seje http://www.site.com.br/artigo/codeigniter/123

ele vai se utilizar da base da url (www.site.com.br) para completar o caminho da imagem sem precisar usar php e funções pra isso

gravatar

Paulo  em 16 de setembro de 2010

Opa… não da pra colocar html no comentário :P

O caminho da imagem fica assim src=”/assets/img/image.jpg”

gravatar

Tárcio Zemel  em 20 de setembro de 2010

Obrigado pela força, Daniel! Aguardamos sua presença nos próximos artigos!

gravatar

Tárcio Zemel  em 20 de setembro de 2010

Infelizmente não saberia dizer se existem cursos focados em CodeIgniter no Brasil… No momento, o jeito é estudar sozinho.

Mas não se preocupe, o CodeIgniter Brasil está aí para todos os da comunidade de CodeIgniter se ajudarem! ;-)

Ah, ler livro sobre CodeIgniter também ajuda!

gravatar

Tárcio Zemel  em 20 de setembro de 2010

Como assim um “sistema de layout”? Como funciona no Cake, mesmo? Tem tanto tempo que mexi que nem lembro… =P

gravatar

Tárcio Zemel  em 20 de setembro de 2010

Olha só, dica legal! Obrigado por complementar as dicas sobre CodeIgniter apresentadas! ;-)

gravatar

William  em 30 de setembro de 2010

Muito bom!

gravatar

Tárcio Zemel  em 1 de fevereiro de 2011

Muito obrigado, Daniel, abraços!

gravatar

Tárcio Zemel  em 1 de fevereiro de 2011

Sinceramente, não saberia responder… CodeIgniter não é tão divulgado assim no Brasil, infelizmente.

Se eu fosse você, recorreria à compra de livros ao invés de cursos.

gravatar

Tárcio Zemel  em 1 de fevereiro de 2011

Não sei muito bem como é este sistema do Cake, mas dê uma olhadinha no "Template Library for CodeIgniter", de repente, é isso…

gravatar

Tárcio Zemel  em 1 de fevereiro de 2011

Obrigado por compartilhar sua dica! :-)

gravatar

Denis  em 27 de abril de 2011

Muito útil! Vlw!
Todos que começam a usar CI deveriam ler este tópico!

gravatar

Tárcio Zemel  em 16 de maio de 2011

Obrigado! Abraços!

gravatar

Tárcio Zemel  em 16 de maio de 2011

Apesar de uma ou outra coisa ficar defasada com as atualizações do framework, realmente estas dicas são bem úteis!

gravatar

Wanderson  em 25 de maio de 2011

Olá! Parabéns pelo artigo! Já vi que vou ter que ficar "garrado" aqui no site para aprender mais rápido…rsrs

Uma dúvida (estou começando a usar um framework agora e optei pelo CI)…

Fui retirar o index.php da url. Quando criei o .htaccess com o exemplo desse tópico, no PhpDesigner 7, da um erro de sintaxe na linha:
RewriteEngine on

O erro que acusa é 'unexpected T_String'.

Fiz alguma coisa errada?

Valeu!!!

gravatar

Tárcio Zemel  em 8 de junho de 2011

Rapaz, neste programa nunca mexi… Mas, se mesmo dando este erro, funciona, então está tudo bem! ;-)

gravatar

Marcelo Fabiano  em 14 de setembro de 2011

Primeiramente parabéns pelo site tem um otimo conteudo e grandes participações e parabéns pelo post mto bom !! Sou novo com CI e estou aqui com um pequeno problema !!! tenho na raiz a pasta assets onde coloquei mais 3 pastas "images", "styles" e "scripts" quando acesso o sistema "http://www.site.com/inicio&quot; tudo funciona blz quando acrescento uma barra no final "http://www.site.com/inicio/&quot; detona todos meus styles e scripts como faço pra resolver isso ????

gravatar

Tárcio Zemel  em 14 de setembro de 2011

Acho que não tem nada a ver com o fato de ter a pasta "assets", mas sim em como o .htaccess está configurado para permitir pegar os recursos. Dê uma olhada nisso e depois conta.

Att

gravatar

Ednaldo  em 6 de outubro de 2011

Olá, acabei de baixar e instalar o CI, mas tive uma dúvida no fim das configurações:

No último trecho de código desse post você diz para fazer a chamada aos recursos, mas em qual arquivo coloco essas linhas? Index.php?

E outra: no código referido acima a segunda linha está em PHP (echo link_tag…) e na 5ª linha temos uma tag HTML e na 8ª linha uma chamada de script, isso é pra ser inserido, fiquei confuso pq se eu coloco fora do "<?php ?>" dá erro, se eu coloco dentro tbm dá erro.

Desde já agradeço.

gravatar

Tárcio Zemel  em 7 de outubro de 2011

Olá, Ednaldo!

Na verdade, você chama os recursos nas views que irão necessitar deles, entendeu? Foram 3 exemplos genéricos para ilustrar que diversos recursos podem ser usados.

Dê uma lida no artigo sobre views e, caso ainda não tenha feito isso, uma passada pelos artigos de passos iniciais no CodeIgniter.

Abraços!

gravatar

João Andrade  em 17 de outubro de 2011

Boa tarde Tarcio!!! Depois de ler todos os artigos postados até o momento, resolvi meter a mão na massa. Consegui montar um controlador e uma visão, passando alguns metodos (funcoes) com parametros..até ai tudo bem. Mas não consegui fazer funcionar sem o bendito "index.php". Quando crio o arquivo .htaccess na raiz, nao consigo rodar meu controlador:
minha url ficou da seguinte maneira: http://localhost/CI_203/index.php/artigos….coloquei a a pasta no .htacess da seguinte maneira : RewriteEngine on
RewriteCond $1 !^(index.php|images|robots.txt)
RewriteRule ^(.*)$ /CI_203/index.php/$1 [L]

gravatar

João Andrade  em 17 de outubro de 2011

No arquivo config.php, ficou da seguinte forma:

$config['url_suffix'] = '';

gravatar

Tárcio Zemel  em 18 de outubro de 2011

João, não está dando certo porque o caractere "." não foi "escapado". Ficaria:

RewriteEngine on
RewriteCond $1 !^(index.php|images|robots.txt)
RewriteRule ^(.*)$ index.php/$1 [L]

gravatar

João Andrade  em 18 de outubro de 2011

Retorna o seguinte erro:
"Internal Server Error"

gravatar

Tárcio Zemel  em 18 de outubro de 2011

Bem, é assim que fiz em todos meus projetos em CI. Se há algum erro na configuração do ambiente de desenvolvimento, infelizmente não domino essa área… =(

gravatar

João Andrade  em 19 de outubro de 2011

Será que pode ser em algum arquivo .htaccess do wamp????

gravatar

Tárcio Zemel  em 24 de outubro de 2011

Você tá fazendo na raiz do WAMPP? Porque, geralmente, o pessoal costuma fazer uma pasta para cada projeto…

gravatar

felipe fadoni  em 29 de junho de 2012

Quando eu acrescento o link da CSS
<link href="<?php echo $this->config->base_url(); ?>assets/css/style.css" rel="stylesheet" type="text/css" />
ele da o erro
404 Page Not Found

The page you requested was not found.

e o caminho está certinho o que pode ser ?

gravatar

Tárcio Zemel  em 29 de junho de 2012

A sua diretiva "base_url" está configurada corretamente? De repente, você pode uma solução para inclusão de assets, como o Asset Helper.

gravatar

felipe fadoni  em 29 de junho de 2012

eu fiz com o Asset Helper mas deu o mesmo problema, eu to usando o wampserver, php apache mysql eu tenho que alterar alguma configuração para funcionar ?

gravatar

Tárcio Zemel  em 30 de junho de 2012

Teoricamente, você não precisaria alterar nada, fora a diretiva "base_url" no arquivo principal de configuração (ou deixá-lo em branco)… Você já fez isso, certo?

gravatar

felipe fadoni  em 1 de julho de 2012

parceiro, nada, deixei sem fiz de tudo e não reconheceu o caminho da css e imagem as paginas abre normalmente mas não reconhece a CSS e as imagens

gravatar

Tárcio Zemel  em 2 de julho de 2012

Então, realmente, não saberia o que indicar… Chutaria alguma coisa no ambiente em que está rodando o CI, mas não posso dar certeza.

gravatar

wallace.jvm  em 15 de setembro de 2012

Usei a dica a baixo:

RewriteEngine on
RewriteCond $1 !^(index.php|images|robots.txt)
RewriteRule ^(.*)$ index.php/$1 [L]

Mais a dica de usar pasta assets, mas agora Nenhuma imagem, javascript ou css é encontrado…

Ele fica reescrevendo a url pra index.php sempre o que eu devo fazer?

gravatar

Tiago  em 20 de setembro de 2012

Muito bom o artigo, eu estou com um problema em saber como aumentar a quantidade de produtos no carrinho pordefault ele aceita 2 e eu gostaria de 10 sabe onde posso alterar essa configuração?

gravatar

Tárcio Zemel  em 21 de setembro de 2012

Num primeiro momento, só consigo pensar em algum questão com o tamanho do arquivo de cookie… Dê uma olhada nisso.

gravatar

ed_bc  em 14 de outubro de 2012

Olá Tárcio

Estou começando no CI e gostaria de saber se vc pode me ajudar a implementar um js da seguinte maneira: (BD Restaurante) o atendente acessa página 'incluir itens' (já está funcionando) eu gostaria de add um js que ao ser selecionado um item carregasse o preço do mesmo para ser inserido nesta tabela do BD, para seu conhecimento sei pouco de js e por isso não sei direito se devo criar arquivos separados no MVC ou posso incluir nos forms já existentes,( a parte dos arquivos no dir assets eu entendi )
Agradeço muito e parabéns por seu trabalho.

gravatar

Tárcio Zemel  em 14 de outubro de 2012

Olá, Ed!

Na verdade, não é relacionado a, estritamente, CodeIgniter. O trabalho maior será com JS, mesmo (continua no dir assets). Mas não entendi muito bem o que você quer. Segundo sua descrição, pode ser um item simples já com o preço informado e, ao submeter o form, o trabalho no BD seria feito. Poderia passar mais detalhes?

Att

gravatar

ed_bc  em 14 de outubro de 2012

Claro que posso, seria o seguinte: o item já está em uma tabela "produtos" com o preço, qdo o atendente seleciona um item qualquer o preço seria carregado automaticamente em um form_hidden e, ao ser submetido, armazenado tbm na tabela "itens_produto", já q o preço pode ser alterado na outra tabela. O q eu gostaria de saber é se posso fazer a chamada js no mesmo arquivo ( form_itens_produto.php ) e a maneira mais correta de fazer isto.
Não sei se poso comparar, mas seria parecido com um select estado e carregaria as cidades deste estado, a diferença é q tanto preço quanto item estariam na mesma tabela. Eu encontrei este exemplo http://blog.brayanrastelli.com/combos-dependentes… que trata sobre isto, mas tive dificultade em compreender, já que lá trata-se de tabelas diferentes.

gravatar

Tárcio Zemel  em 16 de outubro de 2012

Opa, Ed!

Então, como disse, isso independe de você usar CI ou não, pois é algo de JS. O que você tem que fazer é associar um trigger que vai se disparado quando selecionar o item e, via AJAX, ele vai atualizar o DOM e eventuais registros no BD.

O que você tem que fazer é dar uma olhada em como mexer com AJAX usando jQuery. Você vai ver que é bem simples! ;-)

Att

gravatar

ed_bc  em 16 de outubro de 2012

Blz, estou estudando a respeito para entender melhor, obrigado pela ajuda.

gravatar

Rudy  em 5 de novembro de 2012

Seria legal um exemplo de como remover o index.php se estivermos obrigados a usar um servidor windows… no caso utilizando o web.config ao invés do .htaccess

gravatar

Fernando  em 26 de janeiro de 2013

Parabéns a dica do .htaccess me ajudou muito.
Obrigado

gravatar

Tárcio Zemel  em 30 de janeiro de 2013

Que bom, Fernando, a ideia é essa, mesma! ;-)

gravatar

Jackson  em 18 de maio de 2013

mais uma dica no htaccess..
se vc deseja usar arquivos css e js usando o link do site ex: http://localhost/seuprojeto/css/style.css

vc deve adicionar na exeção do htaccess os css e js, senão ele vai redirecionar para o index. php

o arquivo ficaria mais ou menos assim

RewriteEngine on
RewriteCond $1 !^(index.php|images|robots.txt|css|js)
RewriteRule ^(.*)$ index.php/$1 [L]

gravatar

Tárcio Zemel  em 19 de maio de 2013

Na verdade, a dica já havia sido apresentada no artigo Estrutura de diretórios: organização de pastas do CodeIgniter 2, mas foi bem legal você ter comentado e citado diretamente neste artigo.

Obrigado!

gravatar

José Ivan  em 19 de julho de 2013

Tárcio, no cake é possível attachar o seu view em um layout, isso tudo é manipulado no Controller, lá vc diz qual é o layout. O layout nada mais é do que a moldura do sistema, basicamente, tem o header, footer e menu, e dentro desse .ctp (Cake Template PHP) vc adiciona o content que é onde a sua view entrará.
É simples, nada difícil.
Tem isso no CI?

gravatar

Rogério  em 16 de outubro de 2013

Nossa!! Estou adorando o CI. A curva de aprendizado é muito mais rápida que o ZF2. Aprendi em 1 semana o que não consegui em 1 mês de estudo com o ZF2! Quanto as dicas acima, não conseguia fazer funcionar um menu de um projeto (um simples blog) e usando a base_url(), funcionou muito bem ( About). Espero que tenha novas dicas/artigos sempre. Estou lendo todo o site…

gravatar

Diegus_Miestro  em 16 de outubro de 2013

Bem, não estou conseguindo alterar a pasta de View. Estou usando a versão 2.1.4 e não consigo alterar para uma pasta no diretório raiz. Estou criando o MY_Loader.php na pasta de libraries e replicando na raiz do application e nada acontece, continua pegando da pasta View dentro do application

gravatar

kristal plaket  em 3 de fevereiro de 2015

Parabéns a dica do .htaccess me ajudou muito.
Obrigado

gravatar

Raphael Schubert  em 5 de abril de 2015

Olá eu dei uma lida dos comentários eu não vi ninguém comentar. Quando usar a base_url() você não precisa concatenar usando . 'assets…

Eu uso diretamente da seguinte forma: base_url('assets…') no meu caso eu uso includes no lugar de assets mas é frescura pessoal. Você economiza 3 caracteres. heheh preguiça de escrever. Mas fica como mais um modo de fazer. Abraço.

gravatar

ackeley  em 23 de julho de 2015

Boa noite pessoal, primeiramente parabéns pelo post, sou novo com Codeigniter. e estou com um baita problema, pois fiz um painel adm de um site porém localhost ele funciona perfeitamente quando coloco ele na hospedagem ele da erro 404, já configurei o config, e mesmo assim nada. se alguem puder me ajudar ficarei muito grato.

gravatar

jose soares  em 6 de agosto de 2015

kara parabens…
mas.. estou usando o codeigniter 3.0
e essa linha assim funciona…
<link rel="stylesheet" href="<?php echo base_url()?>css/matrix-login.css" />

mas quando migro a pasta css para dentro da pasta assets e uso assim
<?php echo link_tag('assets/css/matrix-login.css') . "n"; ?>
… nao carrega.

mesma coisa com :
funciona: <script src="<?php echo base_url()?>js/jquery-1.10.2.min.js"></script>
nao funciona: <script type="text/javascript" src="<?php echo base_url() . 'assets/js/jquery-1.10.2.min.js' ?>"></script>

que pode ser? tem alguma razao para isso acontecer???
se ou se nao puder me ajudar
agradecimentos

gravatar

Angela  em 20 de setembro de 2015

Your answer shows real ineleligtnce.

gravatar

Lindberg  em 28 de setembro de 2015

Ola
O meu dar erro 404 Page Not Found … estou procurando entender e resolver

gravatar

Fernando Silva  em 8 de dezembro de 2015

Cara você conseguiu resolver esse problema?

gravatar

http://www.sorethumbsblog.com/  em 28 de abril de 2016

Thanks, I was amazed by this blog post. I found this post using Google search, and certainly liked taking time to read it, so I’ll probably visit through again within a few days and read up on what’s new Good stuff!

gravatar

http://www.ionicbathfootdetox.com/  em 28 de abril de 2016

I covered Harris’s previous contrarian open letter to the UN back in 2007 (as noted at Hot Topic), as well as earlier Canada-focused eforts, all with the National Post .It looks like the current open letter was not published today, but perhaps the press deadline was today for actual print publication tomorrow (and perhaps online late today). It’s not clear which “major media outlet” will carry this, but the National Post would be the most logical choice, given the long history of collaboration between Harris and Post financial editor Terence Corcoran.

gravatar

http://www.goifit.com/  em 1 de junho de 2016

Vad roligt att de blev bra. En perfekt bulle tycker jag. Enkel att göra, god att äta och passar både till vardag och till fest.

gravatar

http://www.healthychatters.com/  em 4 de junho de 2016

Why the #### have I got a bunch of Subscriptions that I never subscribed to in my Subs list. What is worse, I cant even delete them, even by sub-ing followed by un-subscribe. Site upgrade ???

gravatar

http://www.maysvillepresbyterian.com/  em 4 de junho de 2016

Nancy,Yes, house church can also have downsides, no doubt. Much of what we do depends on who is involved, their personal desire to love, grow, change, be vulnerable.Your Saturday practice sounds lovely!

gravatar

car insurance quotes  em 5 de junho de 2016

Can’t thank you enough for this article, Jenika. It’s just about exactly what I needed to hear this morning. I’ve been feeling down in the dumps about my business’s progress (marketing, actually, more than the artistic side) and I have no one but myself and my fears to blame for my inaction. You hit the nail on the head, as usual.[]

gravatar

car insurance  em 5 de junho de 2016

I love that reply fron Citizenscientistuk. I’ve had that feeling off and on for years and it is always a warning that I need to listen to. Very interesting discussion here. Thank you

gravatar

Irineu  em 5 de abril de 2017

Excelente dica,
RewriteEngine on
RewriteCond $1 !^(index\.php|images|robots\.txt)
RewriteRule ^(.*)$ index.php/$1 [L]

Funcionou perfeitamente.
Obrigado

Comente!