0

这是我第二次在这里问这个问题。我会尽量让你更容易给你答案。

这都是关于重写规则的。首先,看看下面:

以下4个php脚本与我的php登录脚本的帐户管理有关。

  1. 帐户.php
  2. 登录.php
  3. 注册.php
  4. 注销.php

有关脚本的更多详细信息:

  1. Accout.php 基于 GET 请求有 4-5 个页面。EG ?page=edit, ?page=view 等。

  2. Login.php 只有 2 个页面,?action=login 和 ?action=block。

  3. Signup.php 有 3 个页面,?page=process,?page=process&step=1,2。

  4. logout.php 只有一页。

这是我剧本的一部分。现在我有兴趣重写丑陋的网址。我希望所有页面都有“帐户”前缀。

  1. 帐户/编辑
  2. 帐户/视图
  3. 帐号登录
  4. 帐户/登录/阻止
  5. 帐户/创建
  6. 帐户/创建/步骤/1
  7. 帐户/创建/步骤/2
  8. 帐户/注销

我想我已经尽可能地澄清了我的问题。我已经尝试了很多,但都失败了。我希望你们能回答我“我怎么能这样做?” 或“这种情况背后的代码应该是什么?”

拜托,我真的很需要你的帮助。

[编辑]

感谢您对@JonLin 的支持。非常感谢。但我还需要你的帮助。我希望如果你在这里帮助我可以做其他人。

我现在有,

  1. 论坛.php?fid=1&p=2
  2. 线程.php?tid=1&p=2

(它不仅是 1 或 2,它的 [(0-9)+] )

如何做到这一点

  1. 论坛/f1/任何东西/page-2
  2. 论坛/t1/任何东西/page-2

我已经尝试了您的 signup.php 代码并稍作修改,但它不起作用。

我所有的脚本页面都是这样格式化的, any.php?xid=n&p=n ( n != 1 或 n > 1 )。

所以我想要与 any.php 相关的 any.php 使用相同的前缀,因为 any.php 有 book.php 我想要这样的 url,any/a1/anything/page-2 和 any/b1 /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 回答