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
Apache htaccess重定向,替换URL中的一个字符_Apache_.htaccess_Redirect_Mod Rewrite - Fatal编程技术网

Apache htaccess重定向,替换URL中的一个字符

Apache htaccess重定向,替换URL中的一个字符,apache,.htaccess,redirect,mod-rewrite,Apache,.htaccess,Redirect,Mod Rewrite,好了,开始吧 我们从InDesign在DVD上创建了一个图像库,该图像库在页面上有一个URL,从PDF文件中可以单击链接,因此用户可以下载图像供自己的网站等使用 出现了一个问题,在某些情况下,链接已从 http://example.com/2014-Image-Bank/Accessories-Folder/JPEG/image_1.jpg 到 %AD是一个过度核心的字符,indesign似乎是随机加入的 由于DVD都是复制的,可以使用,我想使用.htaccess来简单地重定向链接,忽略%AD

好了,开始吧

我们从InDesign在DVD上创建了一个图像库,该图像库在页面上有一个URL,从PDF文件中可以单击链接,因此用户可以下载图像供自己的网站等使用

出现了一个问题,在某些情况下,链接已从

http://example.com/2014-Image-Bank/Accessories-Folder/JPEG/image_1.jpg

%AD是一个过度核心的字符,indesign似乎是随机加入的

由于DVD都是复制的,可以使用,我想使用.htaccess来简单地重定向链接,忽略%AD

//301 Redirect Entire Directory
RedirectMatch 301 https://mysite.com/2014-Im¯age-Bank/(.*)     
https://mysite.com/2014-Image-Bank/$1
但它不起作用

正如我所读到的,我已经尝试使用Im年龄和Im%这两个格言。htaccess在URL编码时查找URL。

您可以在重写规则中使用hexcode,即:\xAD

通过httpd.conf启用mod_rewrite和.htaccess,然后将此代码放在DOCUMENT_根目录下的.htaccess中:

Options +FollowSymLinks -MultiViews
# Turn mod_rewrite on
RewriteEngine On
RewriteBase /

RewriteRule ^(.*?)\xAD(.*)$ /$1$2 [L,R]

Unicode U+00AD不是一个“overscore”,而是一个软连字符。您的URL显示%20,但您正试图替换%AD?我的错是%AD,这是问题所在,请修改帖子
Options +FollowSymLinks -MultiViews
# Turn mod_rewrite on
RewriteEngine On
RewriteBase /

RewriteRule ^(.*?)\xAD(.*)$ /$1$2 [L,R]