0

ディレクトリに対してのみ、URLを書き換えるにはどうすればよいphotosですか?

http://www.abc.com/photos/index.php?page=2http://www.abc.com/photos/page/2

私の.htaccess

# Turn mod_rewrite on
RewriteEngine on
RewriteBase /
...
4

4 に答える 4

3
RewriteRule ^photos/page/([0-9]+) index.php?page=$1
于 2013-02-14T12:57:04.633 に答える
1
RewriteRule ^photos/index.php?page=([0-9]*)$ /photos/page/$1 [R=301,L]
于 2013-02-14T12:56:46.527 に答える
1

どの文字列が動的であるかについて言及していないので、この回答ではpage2が可変であると想定しています。

これを試すことができます:

Options +FollowSymlinks
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI} !index\.php                 [NC]
RewriteCond %{REQUEST_URI} ^/photos/([^/]+)/([^/]+)/?  [NC]
RewriteRule .*      photos/index.php?%1=%2          [L,QSA]

内部でマップする

http://www.abc.com/photos/key/val 末尾のスラッシュの有無にかかわらず

に:

http://www.abc.com/photos/index.php?key=val

文字列keyvalは可変であると見なされ、 はphotos固定であると見なされます。

永続的で目に見えるリダイレクトの場合は、 に置き換え[L,QSA]ます [R=301,L,QSA]

于 2013-02-14T16:46:53.650 に答える
0
RewriteEngine On
RewriteRule ^photos/page/([a-zA-Z0-9-/]+)$ photos/index.php?page=$1 [QSA]
RewriteRule ^photos/page/([a-zA-Z0-9-/]+)/$ photos/index.php?page=$1 [QSA]
于 2013-02-14T13:06:44.200 に答える