-1

传入的 URL

domain.com/12/3

应该重写为

domain.com/?w=12&h=3

htaccess

RewriteEngine on
RewriteRule ^([a-z]{2,2})/([a-zA-Z0-9_-]+)$ index.php?w=$1&h=$2 [QSA]

php

<?php
echo $_GET['h'];
?>

结果

404页

我尝试使用 htaccess 更改 url 的结果,然后从 URL 中检索值,有人可以帮我吗?

4

4 回答 4

1

也许你需要-像这样逃避:

RewriteRule ^([a-z]{2,2})/([a-zA-Z0-9_\-]+)$ index.php?w=$1&h=$2 [QSA]

PS。我希望上面的 URL /12/3 只是一个例子,因为你的正则表达式只接受 az

于 2013-02-06T16:23:20.603 回答
0
RewriteEngine On
RewriteRule ^[a-z]{2,2})/([a-zA-Z0-9_-]+)$ /index.php?w=$1&h=$2 [QSA]

本质上,我很确定您需要 / 在 index.php 前面

我喜欢将这个生成器用于我的 mod-rewrite 规则。

http://www.generateit.net/mod-rewrite/

于 2013-02-06T16:23:22.373 回答
0

尝试将您的重写规则更改为以下内容:

RewriteEngine on
RewriteRule ^([a-z0-9]{2})/([a-zA-Z0-9_-]+)$ /index.php?w=$1&h=$2 [QSA]

您的示例有两个数字作为路径的第一部分,不会被[a-z].

于 2013-02-06T16:24:37.040 回答
-1
RewriteEngine On
RewriteRule ^(.*)/(.*)$ index.php?w=$1&h=$2 [QSA]

上面整理了一下。感谢您的回复

于 2013-02-06T16:26:21.230 回答