.htaccess正在生成多个重定向而不是1

时间:2016-02-15 15:05:14

标签: .htaccess server subdomain

我不知道在哪里问这个因为我是htaccess的新手。我在我的网站的根目录中创建了一个.htaccess文件。在public_html文件夹中。

当我输入网站时,这就是它给我的。

www.example.com/coming-soon/coming-soon/coming-soon/coming-soon/coming-soon/coming-soon/coming-soon/coming-soon/coming-soon/coming-soon/coming -soon /即将淳/即将淳/即将淳/即将淳/即将淳/即将淳/即将淳/即将淳/即将淳/即将淳/

我正在尝试将site.com重定向到site.com/coming-soon。

我只有一个.htaccess文件,它会读取。

<IfModule mod_deflate.c>
SetOutputFilter DEFLATE
<IfModule mod_setenvif.c>
    # Netscape 4.x has some problems...
    BrowserMatch ^Mozilla/4 gzip-only-text/html

    # Netscape 4.06-4.08 have some more problems
    BrowserMatch ^Mozilla/4\.0[678] no-gzip

    # MSIE masquerades as Netscape, but it is fine
    # BrowserMatch \bMSIE !no-gzip !gzip-only-text/html

    # NOTE: Due to a bug in mod_setenvif up to Apache 2.0.48
    # the above regex won't work. You can use the following
    # workaround to get the desired effect:
    BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html

    # Don't compress images
    SetEnvIfNoCase Request_URI .(?:gif|jpe?g|png)$ no-gzip dont-vary
</IfModule>

<IfModule mod_headers.c>
    # Make sure proxies don't deliver the wrong content
    Header append Vary User-Agent env=!dont-vary
</IfModule>
</IfModule>
Redirect 302 / http://www.example.com/coming-soon/

我似乎无法弄清楚为什么它指向这样的多个子文件夹。

2 个答案:

答案 0 :(得分:1)

这是因为Redirect指令的贪婪行为。它试图匹配所有传入的uris,包括/即将到来。

您可以使用带有正则表达式模式的RedirectMatch重定向主页。

RedirectMatch 302 ^/$ /coming-soon

答案 1 :(得分:0)

Starkeens的答案使用RedirectMatch方法完美运行。我确实找到了为什么我的重定向版本无法正常工作。

Redirect 302 / http://www.example.com/coming-soon/

通过仅使用斜杠,它试图找到文件夹和文件的每个实例,并将该文件夹/文件重定向到即将到来的页面。

明确使用&gt;

Redirect 302 /index.html http://www.example.com/coming-soon/ 

它告诉服务器显式查找索引文件,该文件是您在键入website.com时使用的文件,然后将该人员转移到您选择的位置。希望这有助于某人。