0

http://mysite.com/item/?food=1&drink=1&bar=1&name=Bombaのような URL があります 。

より使いやすく、おそらくより安全なものにして、 http://mysite.com/item/Bombaのようにしたい

問題は、ときどきドリンクやバーが URL の一部に含まれないことです。そのため、.htaccess で動作させる方法がわかりません。また、複数の get 変数のルールを作成する方法と、書き換えルールで条件を使用できるかどうかもわかりません (drink==true などの場合)。また、リンクを共有できるようにしたいので、投稿を使用したくありません。

今までこんなの作ってた

mysite.com/item/1/Bomba.menu

そしてルール

オプション +FollowSymlinks
RewriteEngine on
RewriteRule ^item/(.+)/(.+).menu item/?food=$1&drink=$1&bar=$1&name=Bomba [nc]

ただし、URLが同じままである場合にのみ機能します。ありがとう

4

2 に答える 2

1

ついに私はこの短いリンクhttp://mysite.com/item/1/D1/W1/Bombaを作成しました そして、このルールを .htaccess ファイルに追加しました。

Options +FollowSymlinks  
RewriteEngine on  
RewriteRule ^item/(.+)/(D.)/(W.)/(B.+)/(.+) item/?food=$1&drink=$1&wine=$1&bar=$1&name=$5 [nc]
RewriteRule ^item/(.+)/(D.+)/(W.+)/(.+) item/?food=$1&drink=$1&wine=$1&name=$4 [nc]
RewriteRule ^item/(.+)/(D.+)/(B.+)/(.+) item/?food=$1&drink=$1&bar=$1&name=$4 [nc]
RewriteRule ^item/(.+)/(W.+)/(B.+)/(.+) item/?food=$1&wine=$1&bar=$1&name=$4 [nc]

それが誰かを助けることを願っています。:)

于 2013-04-29T21:41:56.567 に答える
0

[編集された回答]

ドリンク ID かバー ID かを判断する方法がないため、キーと値のペアとして設定する必要があります。

私が考えることができるもう 1 つの方法は、ID にプレフィックスを付けることです。それが Drink ID の場合は、動的 URL を作成します。

http://mysite.com/item/D1/B4

次に、接頭辞が「D」の場合はドリンク、「B」はバーなどです。

于 2013-04-28T17:03:33.647 に答える