0

我想用 htaccess 文件转换我的 URL

http://example.com/sfdf121d

http://example.com/test.php?id=sfdf121d

'sfdf121d' 是一个随机的 no ,它是可变的

我的 htaccess 代码是

Options +FollowSymLinks
RewriteEngine on
RewriteRule ^([0-9]+) test.php?id=$1 [L]
4

3 回答 3

1

这是一个选项。尝试这个:

RewriteEngine On
RewriteCond %{REQUEST_URI} ^.*/(\w+)$ [NC]
RewriteRule .* test.php?id=%1 [L]
于 2012-12-15T07:25:27.783 回答
0

您应该提供更多信息: - 返回 404 时哪个 URL 是结果 - 是由框架/cms 处理的 404 - 那里存在哪些其他条件和重写

我假设重写规则不是以数字开头,因此它不会重写

尝试从头开始检查。RewriteRule ([0-9]+)$ test.php?id=$1 [L]

无论如何,您还应该检查您的 test.php 是否匹配。所以在上面的行之前添加。

重写规则 (. )?test.php(. )? - [大]

这肯定也可以优化:)

于 2012-12-15T06:10:39.433 回答
0

尝试:

Options +FollowSymLinks
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/]+)$ test.php?id=$1 [L]
于 2012-12-15T05:13:49.020 回答