0

.htaccessファイルを書きたいので、この部分があります

(例: http://www.mysite.com/tutorial/php/bydate/p7 )

RewriteRule ^(album|tutorial)/(.*)/(bydate|byuser|byrate|bypost)/(asc|desc)/p([0-9]+)$ $1.php?cat=$2&sort=$3&order=$4&p=$5 [QSA]
RewriteRule ^(album|tutorial)/(.*)/(bydate|byuser|byrate|bypost)/(asc|desc)/$ $1.php?cat=$2&sort=$3&order=$4 [QSA]
RewriteRule ^(album|tutorial)/(.*)/(bydate|byuser|byrate|bypost)/p([0-9]+)$ $1.php?cat=$2&sort=$3&p=$4 [QSA]
RewriteRule ^(album|tutorial)/(.*)/(bydate|byuser|byrate|bypost)/$ $1.php?cat=$2&sort=$3 [QSA]
RewriteRule ^(album|tutorial)/(.*)/(asc|desc)/p([0-9]+)$ $1.php?cat=$2&order=$3&p=$4 [QSA]
RewriteRule ^(album|tutorial)/(.*)/(asc|desc)/$ $1.php?cat=$2&order=$3 [QSA]
RewriteRule ^(album|tutorial)/(.*)/p([0-9]+)$ $1.php?cat=$2&p=$3 [QSA]
RewriteRule ^(album|tutorial)/(.*)/$ $1.php?cat=$2 [QSA]

私の質問は次のとおりです。

1-それを使用する方が良いですか? または十分です

RewriteRule ^(album|tutorial)/(.*)/$ $1.php?cat=$2 [QSA]

(例: http://www.mysite/tutorial/php/?sort=bydate&order=desc&p=2 )

そして、私は自分のphpファイルでパラメータを扱いますか?

2-最初の部分を使用したい場合、それを単純化する方法はありますか?

4

1 に答える 1

0

PHP ファイルでパラメーターを処理する場合は常に、この方法を使用することをお勧めします。そうしないと、100 の RewriteRules を含む .htaccess ファイルが作成されます...

Wordpress の .htaccess ファイルを見てください。

RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

すべて (既存のファイルとディレクトリを除く) は index.php ファイルにリダイレクトされます。これですべてです。

于 2013-03-07T15:24:32.133 に答える