Como faço para remover a "index.php"
saliência em cada caminho no codeigniter em algum lugar no centro? Eu quero não limpar index.php-fied URLs
?
php
mod-rewrite
codeigniter
url-rewriting
OrangeRind
fonte
fonte
Respostas:
Se você estiver usando o Apache, coloque um arquivo .htaccess em seu diretório raiz da web contendo o seguinte:
Outra boa versão está localizada aqui:
http://snipplr.com/view/5966/codeigniter-htaccess/
fonte
RewriteCond $1 !^\/(index\.php|assets|robots\.txt)
Tive alguns grandes problemas ao remover o index.php. Como regra geral, o .htaccess abaixo foi testado em vários servidores e geralmente funciona:
Se você não tiver sorte com isso, o próximo passo é ajustar seu arquivo de configuração. Experimente alguns dos outros protocolos de URI, por exemplo
Se você ainda não está tendo sorte, tente alterar a regra de reescrita para incluir sua subpasta. Isso costuma ser um problema se você usar um URL temporário em um servidor de desenvolvimento etc:
Basta brincar com essas opções, uma deve funcionar. Além disso, certifique-se de que seu arquivo de índice esteja definido como:
Boa sorte!
fonte
Tenha o arquivo.htaccess no diretório raiz do aplicativo, junto com o arquivo index.php. (Verifique se a extensão htaccess está correta, Bz htaccess.txt não funcionou para mim.)
E adicione as seguintes regras ao arquivo .htaccess,
Em seguida, encontre a seguinte linha em seu arquivo application / config / config.php
Defina a variável vazia conforme abaixo.
É isso, funcionou para mim.
Se não funcionar, tente substituir a seguinte variável por estes parâmetros ('AUTO', 'PATH_INFO', 'QUERY_STRING', 'REQUEST_URI' e 'ORIG_PATH_INFO') um por um
fonte
Dê uma olhada no
system\application\config\config.php
arquivo, há uma variável chamadaindex_page
Deveria ser assim
mude para
Então, como mencionado, você também precisa adicionar uma regra de reescrita ao
.htaccess
arquivoNota: no CodeIgniter v2 este arquivo foi movido da pasta do sistema para
application\config\config.php
fonte
Todos os métodos acima falharam para mim e então descobri que não estava alterando AllowOverride None para AllowOverride All em meu arquivo host virtual em / etc / apache2 / sites-available / default
fonte
fonte
fonte
Só pensei em adicionar
seria o .htaccess e certifique-se de editar sua variável application / config.php da seguinte maneira:
substituir
com
fonte
Isso definitivamente deve funcionar .. tente
fonte
Certifique-se de ter ativado
mod_rewrite
(eu não tinha).Para habilitar:
Além disso, substitua
AllowOverride None
porAllowOverride All
Finalmente ...
Meu .htaccess é
fonte
actions
: stackoverflow.com/questions/14419757/…Solução perfeita [testada em localhost e também em domínio real]
fonte
Este é um .htaccess para um dos meus projetos de CI:
A última linha deve fornecer o que você precisa, embora você possa ou não precisar de '/ projectFolder' dependendo de como sua estrutura de pastas está configurada. Boa sorte!
fonte
Use
mod_rewrite
conforme as instruções neste tutorial do wiki do CI.fonte
Como um arquivo .htaccess, uma boa opção é usar o fornecido pelo Kohana Framework :
É um .htaccess bem pensado que simplesmente funciona.
fonte
Existem duas maneiras de resolver index.php no caminho de url para codeigniter
1: Em config / config.php Alterar código:
para
2: Crie .htacess no caminho raiz se não for criado, copie o seguinte código: -
Salve-o e verifique em sua configuração do Apache rewrite_module OU mod_rewrite está habilitado. Se não estiver habilitado. (Melhor abordagem)!
fonte
Eu testei isso no apache2 em muitas hospedagens diferentes e funciona muito bem.
use este htaccess
certifique-se de ter
enabled mod_rewirte
com umphpinfo();
então faça isso em config / config.php:
se ainda não funcionar, tente mudar o
$config['uri_protocol']='AUTO'
para um dos listados dentroapplication/config/config.php
arquivos na linha 40/54:às vezes eu usei: em
REQUEST_URI
vez deAUTO
ou"QUERY_STRING"
para hospedagens goDaddyfonte
Olhe no
\application\config\config.php
arquivo, há uma variável chamadaindex_page
Deveria ser assim
mude para
Então, como mencionado, você também precisa adicionar uma regra de reescrita ao
.htaccess
arquivo como esta:Funciona para mim, espero que você também.
fonte
Se você estiver no Linux e usando o servidor apache2, então podemos precisar substituir o arquivo apache2.conf também ao lado das mudanças no arquivo .htaccess. Encontre o arquivo de configuração do apache2 em /etc/apache2/apache2.conf .
Pesquisar no diretório / var / www / Alterar AllowOverride Nenhum -> AllowOverride Todos
fonte
coloque um arquivo .htaccess em seu diretório raiz da web
Qualquer ajuste que você fizer - se o exposto acima não for atendido - não funcionará. Normalmente está na pasta System, deve estar na raiz. Felicidades!
fonte
application
diretório em vez de na raiz.Eu tentei muitas soluções, mas a que encontrei é esta:
Isso irei remover o index.php da url conforme necessário.
fonte
Eu uso essas linhas no
.htaccess
arquivo; que coloco na pasta raizEntão posso acessar http://example.com/controller/function/parameter
em vez de http://example.com/index.php/controller/function/parameter
fonte
Isso ajudará você a colar este código na pasta do aplicativo no arquivo .htacess
fonte
Este me fez a mágica completa:
Espero que ajude!
fonte
Oi este me deu certo
assim como isso
onde a pasta é o nome da subpasta se este aplicativo codeigniter estiver hospedado como um subdomínio, por exemplo, domainname / folder / index.php.
Espero que funcione para você. Obrigado.
fonte
Copie o código anterior a seguir em seu .htaccess
fonte
fonte
Passo 1 :
Adicione isso no arquivo htaccess
Passo 2 :
Remova index.php na configuração do codeigniter
Etapa 3 :
Permitir substituição de htaccess na configuração do Apache (comando)
sudo nano /etc/apache2/apache2.conf e edite o arquivo e mude para
para pasta www
Passo 4 :
Apache mod rewrite ativado (Comando)
Etapa 5:
Reinicie o Apache (Comando)
fonte