7
votes

Consultateur | .htaccess supprime index.php de l'URL

OK, j'ai fait exactement comme demandé dans la documentation de CodeDigniter, créé un nouveau fichier .htaccess xxx pré>

J'utilise XAMPP, donc mon URL pour accéder au site était p> xxx pré>

maintenant après l'application du fichier .htaccess ci-dessus, je l'ai essayé sans index.php comme ceci p> xxx pré>

mais au lieu de travailler, il est possible Redirection de moi sur cette URL p> xxx pré>

Comment résoudre ce problème? p>

plus J'arrive sur ma page après avoir essayé le .htaccess p>

sur le dessus du message de la page apparaît, P>

$config['base_url'] = '';
$config['index_page'] = 'index.php';
$config['uri_protocol'] = 'AUTO';
$config['url_suffix'] = '';
$config['enable_hooks'] = FALSE;
$config['permitted_uri_chars'] = 'a-z 0-9~%.:_\-';
$config['allow_get_array']      = TRUE;
$config['enable_query_strings'] = FALSE;
$config['controller_trigger']   = 'c';
$config['function_trigger']     = 'm';
$config['directory_trigger']    = 'd'; // experimental not currently in use
$config['sess_cookie_name']     = 'zk_ci_session';
$config['sess_expiration']      = 7200;
$config['sess_expire_on_close'] = TRUE;
$config['sess_encrypt_cookie']  = TRUE;
$config['sess_use_database']    = TRUE;
$config['sess_table_name']      = 'sys_ci_sessions';
$config['sess_match_ip']        = FALSE;
$config['sess_match_useragent'] = TRUE;
$config['sess_time_to_update']  = 300;
$config['csrf_protection'] = TRUE;
$config['csrf_token_name'] = 'csrf_test_name';
$config['csrf_cookie_name'] = 'csrf_cookie_name';
$config['csrf_expire'] = 7200;
$config['rewrite_short_tags'] = FALSE;


2 commentaires

Réponse exacte et complète Stackoverflow.com / Questions / 14297770 / ...


Au lieu de rewriterule ^ (. *) $ /Index.php/$1 [l] Utilisez rewriterule ^ (. *) $ Index.php / $ 1 [l] dans votre Dossier racine / .htaccess


7 Réponses :


2
votes

Essayez le suivant

RewriteEngine on
RewriteBase /
# Hide the application and system directories by redirecting the request to index.php
RewriteRule ^(application|system|\.svn) index.php/$1 [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [QSA,L]


2 commentaires

Merci pour votre réponse, j'ai essayé votre code, ça marche mais c'est pareil, je dois écrire l'index.php pour le faire fonctionner. Si j'essaie Zorkif_nextgen / Main, il me redirige à nouveau à la localehost: 12 / XAMPP ?? Pourquoi sa redirection de moi à la racine principale?


J'ai essayé 10 d'entre eux. Vous êtes celui qui a travaillé pour mon XAMPP.



-1
votes

N'utilisez pas de fichier .htaccess pour supprimer index.php de vos URL. Ceci est un problème dans votre config. Regardez spécifiquement à $ config ['base_url']] et $ config ['index_page']


1 commentaires

Pouvez-vous savoir comment je peux supprimer index.php de l'URL sans htaccess?



7
votes

Essayez de définir la réécritureBase à / Projets / zorkif_nextgen xxx


1 commentaires

très agréable. Merci. Oui, ça marche maintenant comme je le voulais :)



15
votes

Ceci fonctionne bien pour moi:

1- Créez un fichier .htaccess dans le dossier racine avec le contenu suivant xxx

2- du changement de fichier de configuration < Code> $ config ['index_page'] = 'index.php'; à $ config ['index_page'] = '';


0 commentaires

1
votes

Vous pouvez essayer ce xxx

pour la lecture future, cela vous aidera à CodeIntre Suppression de l'index PHP de l'URL à l'aide de HTACCESS


0 commentaires

1
votes

Vous avez peut-être consulter Config / Routes.php.

Il peut avoir été réglé sur un contrôleur par défaut.


0 commentaires

2
votes
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR] 
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]

0 commentaires