从url htaccess中删除第二个目录

时间:2017-03-01 09:05:59

标签: wordpress .htaccess url-rewriting

大家好我想从https://www.example.com.au/products/mopod/MP15/这样的网址中删除第二个目录?到https://www.example.com.au/products/MP15/

顺便说一下/ mopod / MP15是由插件生成的。

1 个答案:

答案 0 :(得分:0)

假设您使用的是Apache,则必须先在.htaccess中启用mod_rewritehttpd.conf

然后,您可以通过将以下示例添加到.htaccess中的DOCUMENT_ROOT来重写网址以“移除”给定目录。在此示例中,mopod是您希望隐藏的文件夹:

Options +FollowSymLinks -MultiViews
RewriteEngine On
RewriteBase /
RewriteRule ^/products/mopod/(.*)$ /products/$1 [L,NC,R]

说明:上述规则找到任何匹配产品/ mopod / *的网址,并将*中的文件移至$ 1的位置。然后我们重定向到/ products / $ 1。

These are the flags used:
L  - Last
NC - No Case comparison
R  - External Redirection

为了完成起见,因为您没有指定您正在使用的Web服务器,所以下面还给出了一个IIS示例(其中mopod是要删除的文件夹)。如果我假设你使用的Apache是​​正确的,你可以忽略这一点。

<system.webServer>
    <rewrite>
        <rules>
            <rule name="removefolder" stopProcessing="true">
                <match url="^/products/mopod/(.*)" />
                <action type="Rewrite" url="/products/{R:0}" appendQueryString="true" />
            </rule>
        </rules>
    </rewrite>
</system.webServer>

我看到你是Stack Overflow的新手。欢迎!

如果这回答了您的问题,请记住将我的答案标记为正确。谢谢。