我们在iPhone中的Linkeding遇到了一些问题。某些共享的url中有一个%23.linkedin
路径,这会导致404错误页面。
仅在iPhone共享网址中会发生这种情况。
诸如https://host.com/2018/05/testing-url/
之类的东西正在被转换为https://host.com/2018/05/testing-url/%23.linkding_etc
。
我们尝试将%23
转换为%
以消除错误,但没有运气。
我们如何实现?
预先感谢
答案 0 :(得分:0)
我们尝试将
%23
转换为%
我假设您的意思是#
(如您的标题中所述),因为%23
是经过编码的#
-片段标识符定界符。
由于片段标识符始终不会传递给服务器,因此您不应该尝试“转换”它。取而代之的是,您应该简单地删除此内容及其后的所有内容。
例如,在.htaccess
文件顶部使用mod_rewrite:
RewriteEngine On
RewriteRule ^(.*)# /$1 [R,L]
RewriteRule
模式与%解码的URL路径匹配。即。文字#
,而不是%23
。 #
不是特殊的正则表达式元字符,因此您可以像在URL中的其他普通字符一样对它进行匹配。
以上内容匹配{em> {em}之前的所有内容,并发出重定向,从而删除编码后的#
(即#
)及其后的所有内容。
注意,以上是临时(302)重定向。确认它可以正常工作后,可以通过将%23
标志更改为R
将其更改为永久性301。