我在使用重写引擎以友好网址实现目标时遇到了一些麻烦。
基本上我有以下结构: - index.php - 下 - index.php
我在主索引中的链接是这样的: 下载/的index.php?向下= FILENAME
我希望它能改写像 / download / FILE-NAME(同时指向下载文件夹中的index.php)。 我希望我的第一个索引中的链接也可用于/ download / FILE-NAME
我的实际代码:
RewriteEngine On
RewriteRule download/^([a-zA-Z0-9_-]+)$ index.php?down=$1
任何人都可以帮助我实现这一目标吗?由于我做不好,我经常遇到错误。 之后,如何在转换为seo友好网址后获取变量$ 1?我将下载/ FILE-NAME,我需要PHP从FILE-NAME获取信息。
所以基本上在主index.php中我会有一个像/ download / FILE-NAME这样的链接,它会用FILE-NAME打开down / index.php文件(保留类似的东西。
答案 0 :(得分:2)
试试这个:
RewriteEngine On
RewriteRule ^download/([a-zA-Z0-9_-]+)$ /ifanydirectory/index.php?down=$1
您可以使用$_GET['down']
获取变量ifanydirectory
是index.php
存在从根级别相对路径的目录名称,如果不适用,只需使用/index.php
做一些实验,你会得到正确的。
答案 1 :(得分:1)
RewriteCond %{REQUEST_URI} ^download/(.*)$ [NC]
RewriteRule ^(.*)$ index.php?down=$1 [L,QSA]
捕获index.php中的文件名:
$filename = $_GET["down"];
答案 2 :(得分:1)
也许我没有很好地解释它,因为它不能正常运作。
我已经编辑了主要问题,但在这里尝试更好地解释。
我有一个主要的index.php,链接是
download/FILE-1
download/FILE-2
download/FILE-3
该链接应该打开文件夹 down / index.php?down = FILE-NAME 。 不应该是任何人都可以直接访问“down”文件夹,所以我想将我的主index.php中的链接转换为/down/index.php?down=FILE-NAME,如/ download / FILE-NAME。