2

假设我有这些文件/文件夹:

index.php
A.php
B.php
/A
  E.php
/B
  F.php
C.php
/D

假设我通过 /site/ 访问页面。我想重写 URL 来执行这些任务:

/site/A -> /site/A.php
/site/B -> /site/B.php
/site/index -> /site/index.php
/site/A/F?id=828 -> /site/A/F.php?id=828

我还想在完成后屏蔽“.php”扩展名。如何以这种方式重写 URL?我看了这个问题,但我仍然不明白如何做到这一点。

4

1 回答 1

0

尝试这样的事情:

RewriteEngine On

RewriteCond %{REQUEST_FILENAME}.php -f
RewriteRule ^(.*)$ /$1.php [L]

您链接的问题进行了检查以确保请求不是现有文件或目录。但这会中断,因为您有一个目录/A//B/. 所以你只需要检查是否存在 a/A.php/B.php

于 2013-09-17T03:28:23.910 回答