Domanda

Per qualche ragione in CI 2.0 gli URL non funzionano.

http://localhost/myapp/ - will open the default controller (bc it finds index.php)
http://localhost/myapp/index.php/home/ - will open the default controller 
http://localhost/myapp/home/ - will show path not found

Non sono sicuro se questo è un problema con 2,0 o un problema specifico con la mia configurazione.

Sono in esecuzione Apache 2 su Mac OS X Snow Leopard.

Ho cercato per soluzione .htaccess, ma non ho trovato alcuna per CI 2.0.

È stato utile?

Soluzione 2

Il vero problema è che in Snow Leopard la configurazione attuale directory di solito si trova in /private/etc/apache2/httpd.conf si trova ora in /private/etc/apache2/users/[USERNAME].conf By FollowSymlinks predefinite e AllowOverride sono disabilitate c'è quindi bisogna andare a risolvere il problema manualmente, anche se è abilitato nel regolare httpd.conf

Tricky. Grazie a tutti. In caso contrario, tutto ciò che serve è il .htaccess regolare come la gente già sottolineato.

Altri suggerimenti

Avete una regola di riscrittura in Apache per gestire CodeIgniter come questo? vedi: http://codeigniter.com/wiki/mod_rewrite/

  • Il primo di default funziona (il default è index.php)
  • secondi uno funzionerà perché lo si passa a index.php
  • terza solito senza la regola di riscrittura.

soluzioni .htaccess per CodeIgniter 1.7 funzionerà anche per CodeIgniter 2.0. .htaccess viene utilizzato per configurare il server web Apache, che è indipendente dal CodeIgniter.

(La configurazione suggerita dal CodeIgniter manuale dovrebbe quindi funzionano bene.)

$ sudo sudo chgrp staff /Library/WebServer/Documents/
$ sudo chmod 775 /Library/WebServer/Documents/

Dopo che tutta la mia applicazione sarà sotto la cartella / Library / WebServer / Documents /

Come 'testing'

/ Library / WebServer / Documents / testing

$ echo "Hello World" >> /Library/WebServer/Documents/testing/index.php
http://localhost/testing 
==> it should appear Hello World

ora sotto la cartella '/ Library / WebServer / Documents /' si porrà la cartella CI si dovrà aggiungere il

.htaccess 

RewriteEngine On
RewriteCond $1 !^(index\.php)
RewriteRule ^(.+)$ index.php?$1 [L]
AddHandler php5-script .php

Sul vostro CI_Folder / application / config.php

$config['index_page'] = '';

E penso questo è tutto! Buon divertimento!

Si può trovare qui . E 'sotto 'Rimozione del file index.php' intestazione.

  

La rimozione del file index.php

     

Per impostazione predefinita, il file index.php sarà incluso nella URL:

     

example.com/index.php/news/article/my_article~~V~~singular~~2nd Si può facilmente rimuovere   questo file utilizzando un file .htaccess con alcune semplici regole. Ecco un   esempio di tale file a, utilizzando il metodo "negativo" in cui   tutto viene reindirizzato, tranne gli elementi specificati:

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

Nell'esempio precedente, ogni richiesta HTTP diverse da quelle per index.php,   immagini e file robots.txt è trattata come una richiesta per il vostro index.php   file.

Il modo migliore è installare il XAMPP, lavorare con me.

solo fermare l'apache locale e mettere l'applicazione in htdocs (XAMPP).

Si vedrà l'applicazione obbedendo gli URL amichevoli.

In bocca al lupo

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top