0

(たとえば) TheLinkという名前のコントローラーがあり、通常はmywebsite/index.php/TheLinkからアクセスできます。htaccess で RewriteRule を作成して、TheLink にリダイレクトせずにmywebsite/index.php/The-Link経由でアクセスすることは可能ですか? したがって、基本的には、URL にmywebsite/index.php/The-Link (ダッシュ付き) を指定しますが、TheLink コントローラーを使用します。私はもう試した

RewriteRule ^The-Link$ index.php/TheLink [L]

しかし、それはデフォルトの CodeIgniter 404 ページにリダイレクトするだけです

4

2 に答える 2

1
# To remove index.php from URL

RewriteEngine On
RewriteCond %{REQUEST_URI} ^system.*
RewriteRule ^(.*)$ /index.php/$1 [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]

さらに、Webサイトがルートだけでなく別のディレクトリでホストされている場合は、次を追加します。

RewriteBase /some_directory/
于 2012-11-22T14:32:06.550 に答える
0

どうやら、この問題は htaccess とは関係なく、まったく別の方法で解決されるようです。ここにある解決策:

Codeigniter Routes 正規表現 - コントローラー/メソッド名にダッシュを使用

編集:また、上記のものを含む、これに対するさまざまなソリューションがここにあります: http://ellislab.com/codeigniter/forums/viewthread/124396/

于 2012-11-22T15:40:36.717 に答える