7

Windows7にeasyphpをインストールする際にルールを書き直す必要があります。

ルールが正しくロードされていることを確認する必要があり、大量のルールを作成する必要はありません。また、.htaccessをサーバー(Linux)にコピーするときに、正しく機能することを確認したいと思います。

私はこれについての経験がありません、そしてこれが私がインターネットを掘り起こしているのを見つけたものです:

RewriteRule (.*) index.php?s=$1

今、私が「contact-us」のような基本的なページを持っているならそれは大丈夫ですが、私がサブページを持っているならそれはそうではありません。サブフォルダを作成するにはどうすればよいですか?

ありがとうございました

4

1 に答える 1

11

これがあなたがする必要があることです:

RewriteEngine On
RewriteBase /
RewriteRule ^([a-z0-9_\-]+)/?$ index.php?main=$1 [NC,L] 
RewriteRule ^([a-z0-9_\-]+)/([a-z0-9_\-]+)/?$ index.php?main=$1&sub=$2 [NC,L]

これにより、次のようなページを作成できます。

http://www.domain.com/mainpage/ or
http://www.domain.com/mainpage or
http://www.domain.com/mainpage/subpage/ or
http://www.domain.com/mainpage/subpage

/?スラッシュがオプションであることを意味します

[NC]これにより、テストケースで大文字と小文字が区別されなくなります。展開されたTestStringとCondPatternの両方で、「AZ」と「az」の違いは無視されます。このフラグは、TestStringとCondPatternの比較にのみ有効です。ファイルシステムとサブリクエストのチェックには影響しません。

[L] [L]フラグにより​​、mod_rewriteはルールセットの処理を停止します。ほとんどの場合、これは、ルールが一致した場合、それ以上のルールは処理されないことを意味します。

フラグとルールに関するすべての情報:http://httpd.apache.org/docs/current/mod/mod_rewrite.html

于 2012-01-05T02:35:50.990 に答える