-1

.htaccess ファイルに小さな問題がありました。それは機能しますが、どういうわけか100%機能しません。URLに応じてウェブサイトを構築する方法を探しています。たとえば、「example.com/en/home」がホームページになります。問題は、URL が「example.com/index/en/home」のような場合にしか機能しないことです。

.htaccess ファイルの私のコードは次のとおりです。

RewriteEngine on
RewriteBase /htaccess/

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^(.*)$ index.php/$1

ドメイン:

localhost/~axll/htaccess/

ルート フォルダーは、htaccess の下の localhost (Mac の場合は xampp) にあります。私の理解が正しければ、インデックス ファイルに「en/home」を追加する必要があるため、URL の「インデックス」の部分をそのままにしておくことができるはずです。

編集 1: $_SERVER['PATH_INFO'] を php で使用したところ、次の結果が得られました。

Array ( [0] => [1] => php [2] => test )

配列のインデックスは NULL とは異なるべきではありませんか?

4

2 に答える 2

1

おそらく、ホスト構成でAllowOverride Noneを設定しましたか?.htaccess ファイルの使用を無効にします

これを AllowOverride Allに変更して有効にします

于 2013-02-07T22:32:00.287 に答える
0

私は問題を解決したと思います。間違いを見つけることができなかったので、ローカルホストを再インストールしただけでうまくいきました。助けてくれてありがとう!

于 2013-02-09T09:10:14.263 に答える