簡體   English   中英

URL重寫Codeigniter htaccess

[英]URL-rewriting Codeigniter htaccess

由於我將網站更改為另一台服務器,因此我遇到了無法訪問domain.com/codeigniter/上的網站的問題。 我的默認控制器是info /。它與http://www.domain.com/codeigniter/info/http://www.domain.com/codeigniter/info/model/一起使用

$route['default_controller'] = "info/";
$route['404_override'] = '';
$route['info/(:any)'] = "info/view/$1";

的.htaccess

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

但是在新服務器上它不起作用。 問題在於它總是以http://www.domain.com/index.php結尾,而不是codeigniter安裝目錄的index.php結尾。

可能是什么問題呢?

使CodeIgniter在輔助文件夾中起作用的原因有很多:首先,必須更改$config['base_url'] = http://www.domain.com/codeigniter/'; application / config / config.php中

然后,當然,將.htacces文件更改為此:

 <IfModule mod_rewrite.c>
  Options +FollowSymlinks
  RewriteEngine On

  # block hidden directories
  RewriteRule "(^|/)\." - [F]

  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule ^(.*)$ ./index.php/$1 [L,QSA]
</IfModule>

PHP mod_rewrite模塊是必需的。

更改.htacces並將“ base_url”留空后( http://www.domain.com/codeigniter/不起作用)。

我有以下問題:

http://www.domain.com/codeigniter/ --> ERROR 404 from CI
http://www.domain.com/codeigniter/info/ --> No input file specified
http://www.domain.com/codeigniter/index.php/info/ --> OK

編輯:問題解決了..我忘記了? 在.htaccess中的index.php之后,我將route.php中的默認控制器更改為info / view / home /

它是多種事物的結合...奇怪的是,它可以在舊主機上工作。 顯然是錯誤的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM