Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.htaccess 2动态重写URL_.htaccess_Url_Mod Rewrite - Fatal编程技术网

.htaccess 2动态重写URL

.htaccess 2动态重写URL,.htaccess,url,mod-rewrite,.htaccess,Url,Mod Rewrite,我有一个动态网址在 http://www.technicae.net/cgi-bin/type/mt-search.cgi?IncludeBlogs=2&tag=2%|tag|&limit=20 其中,“|标记|”和“20”零件根据标记而变化。这是一个用perl编写的移动式博客平台。“|标记|”部分是标记的占位符。例如,如果标记为“there”,则url将为 http://www.technicae.net/cgi-bin/type/mt-search.cgi?Include

我有一个动态网址在

http://www.technicae.net/cgi-bin/type/mt-search.cgi?IncludeBlogs=2&tag=2%|tag|&limit=20 
其中,“|标记|”和“20”零件根据标记而变化。这是一个用perl编写的移动式博客平台。“|标记|”部分是标记的占位符。例如,如果标记为“there”,则url将为

http://www.technicae.net/cgi-bin/type/mt-search.cgi?IncludeBlogs=2&tag=2%there&limit=20 
而不是

http://www.technicae.net/cgi-bin/type/mt-search.cgi?IncludeBlogs=2&tag=2%|tag|&limit=20 
我想知道如何在htaccess中重写它,因为我尝试的一切都不起作用。我希望是这样

http://www.technicae.net/tag/|tag|
而不是

http://www.technicae.net/cgi-bin/type/mt-search.cgi?IncludeBlogs=2&tag=2%|tag|&limit=20 
你能帮帮我吗

注意

URL不起作用。

这就是您要搜索的内容:

RewriteEngine On
RewriteBase /

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^tag/([^/]+)$               cgi-bin/type/mt-search.cgi?IncludeBlogs=2&tag=2%$1 [L]
RewriteRule ^tag/([^/]+)/limit/([^/]+)$ cgi-bin/type/mt-search.cgi?IncludeBlogs=2&tag=2%$1&limit=$2 [L]
这将允许此类url:

  • www.domain.com/tag/
  • www.domain.com/tag//limit/
但不是:

  • www.domain.com/limit/

假设您使用的是Apache,请确保已启用mod_rewrite

您应该使用的.htaccess(可能需要调整)是:


棒极了,但它不会从旧链接重定向
RewriteEngine On
RewriteRule ^tag/([^\.]+)$ cgi-bin/type/mt-search.cgi?IncludeBlogs=2&tag=2%$1&limit=20 [NC,L]