删除URL的一部分

问题描述:

http://website.com/wp-content/uploads/a87ff.gif删除URL的一部分

我怎么做一个国防部重写将其更改为

http://website.com/a87ff

htaccess的是这样的

# BEGIN WordPress 
# END WordPress 


# BEGIN wtwp_cache 
# END wtwp_cache 

# BEGIN wtwp_security 
# END wtwp_security 
+0

你能告诉我们你迄今为止的尝试吗? – woz

+0

我不知道从哪里开始:( – user1616846

现在,试试这个一!但它尚未测试,因为我在移动。 ((;与此不同代码的第二版

+0

不是这个没做什么:( – user1616846

+0

请再试一次,因为它现在被编辑了 – 5ervant

+0

这不是提问者想要的,请注意忽略'.gif ' –

重定向请求http://website.com/wp-content/uploads/a87ff.gifhttp://website.com/a87ff,您必须捕获所需的部分,并在替代使用

RewriteEngine on 
RewriteRule ^wp-content/uploads/(.+?)\.gif$ /$1 [R,L] 
+0

这不是错误的方式吗? – Virtlink

+0

@Virtlink我不这么认为。 OP也可能需要其他方式,但首先他必须将客户端重定向到所需的URL。 –

这给一试:

RewriteEngine On 
RewriteBase/
RewriteCond %{DOCUMENT_ROOT}/wp-content/uploads/%{REQUEST_URI}.gif -f 
RewriteRule (.*) /wp-content/uploads/$1.gif [L] 

让我们通过这个运行,所以你明白发生了什么:

的RewriteCond - 使用此条件,我们正在检查所请求的文件是否确实存在于适用的文件夹中。因此,如果您输入/test-image作为URI,它将检查wp-content/uploads/test-image.gif是否存在。

RewriteRule - 现在,如果文件存在,我们会悄悄地将它传递给实际的文件。换句话说,我们将让Apache加载存在的文件,而不更改用户可见的URI。

你的情况:

如果我们输入:                          http://website.com/a87ff

服务器将加载:        http://website.com/wp-content/uploads/a87ff.gif