静态网址不会重定向到请求的网页

时间:2014-11-19 09:59:53

标签: php apache .htaccess

我对.htaccess文件有疑问 我已经在静态中重写了动态URL,如下所示: www.mysite.com/index.php?lang=ITwww.mysite.com/it

使用此重写规则:

RewriteEngine On
RewriteRule ^it/([^/]*)\.html$ /index.php?lang=$1 [L]

到目前为止一直很好......

现在我需要为动态网址创建另一个静态网址,该网址会重定向到产品说明 www.mysite.com/product_details.php?id=1485

.htaccess中插入的规则是:

RewriteEngine On
RewriteRule ^it/prodotto-([^-]*)-([^-]*)\.html$ /it/product_details.php?id=$1&lang=$2 [L]

不幸的是,如果我点击相关链接,我无法访问所请求的页面;但如果我评论这样的第一条规则

#RewriteRule ^it/([^/]*)\.html$ /index.php?lang=$1 [L]

然后我可以看到该页面。 你知道如何解决这个问题吗?

1 个答案:

答案 0 :(得分:-1)

假设lang等于你想要的语言,那么脚本会这样吗?

RewriteEngine On
RewriteBase /
RewriteRule ^it/([^/]*).html$ /index.php?lang=$1 [L]
RewriteRule ^it/prodotto-([^/]*)-([^/]*).html$ /it/product_details.php?id=$1&lang=$2 [L]

这样做

yoursite.com/it/$1.html

yoursite.com/it/prodotto-$1-$2.html