0

こちらで質問させていただくのは2回目です。答えやすいように工夫してみます。

これはすべて、ルールの書き換えに関するものです。まず、以下をご覧ください。

次の 4 つの php スクリプトは、私の php ログイン スクリプトのアカウント管理に関連しています。

  1. account.php
  2. login.php
  3. signup.php
  4. logout.php

スクリプトの詳細:

  1. Account.php には GET リクエストに基づく 4 ~ 5 ページがあります。例 ?page=edit、?page=view など。

  2. Login.php には、?action=login と ?action=block の 2 ページしかありません。

  3. Signup.php には、?page=process、?page=process&step=1,2 の 3 つのページがあります。

  4. logout.php には 1 ページしかありません。

それは私のスクリプトの一部です。今、私は醜いURLを書き換えることに興味があります. すべてのページに「アカウント」プレフィックスが必要です。

  1. アカウント/編集
  2. アカウント/ビュー
  3. アカウント/ログイン
  4. アカウント/ログイン/ブロック
  5. アカウント/作成
  6. アカウント/作成/ステップ/1
  7. アカウント/作成/ステップ/2
  8. アカウント/ログアウト

私はできる限り私の質問をクリアしたと思います。私はたくさん試しましたが失敗します。「どうすればそれができるのですか?」に対する答えを皆さんが持っていることを願っています。または「この状況の背後にあるコードは何ですか?」

お願いします、本当にあなたの助けが必要です。

[編集]

@JonLin をご利用いただきありがとうございます。どうもありがとう。しかし、私はあなたからのもう 1 つの助けが必要です。ここで助けてくれれば、他の人もできると思います。

今私が持っています、

  1. forum.php?fid=1&p=2
  2. thread.php?tid=1&p=2

(その 1 または 2 だけでなく、その [(0-9)+] )

このようにする方法

  1. フォーラム/f1/何でも/ページ-2
  2. フォーラム/t1/何でも/ページ-2

少し編集してあなたのsignup.phpコードを試しましたが、うまくいきません。

スクリプトのすべてのページは、 any.php?xid=n&p=n ( n != 1 または n > 1 ) のようにフォーマットされています。

したがって、any.php に関連する、any.php に使用されるのと同じプレフィックスが必要です。つまり、any.php には book.php があるため、このような URL が必要です。 /anything/page-2 ( n > 1 の場合、 page-n が表示されます)

ここで私を助けてください、私はここで立ち往生しています。フレンドリーなヘルプをありがとうございました。

4

1 に答える 1

0
RewriteEngine On

# to account.php
RewriteRule ^account/edit/?$ /account.php?page=edit [L]
RewriteRule ^account/view/?$ /account.php?page=view [L]
#etc... 

# to login.php
RewriteRule ^account/login/?$ /login.php?action=login [L]
RewriteRule ^account/login/blocked/?$ /login.php?action=block [L]

# to signup.php
RewriteRule ^account/create/? /signup.php?page=process [L]
RewriteRule ^account/create/step/([12])/?$ /signup.php?page=process&step=$1 [L]

# to logout.php
RewriteRule ^account/logout/?$ /logout.php [L]
于 2013-10-10T02:28:35.377 に答える