同一域名上的 URL 缩短器和站点重定向

同一域名上的 URL 缩短器和站点重定向

我有一个域名(http://sdm.fm),我希望它可以重定向到http://somdomato.com

但同时我希望它能作为 URL 缩短器使用。使用 phURL。

喜欢:sdm.fm/hd562fi

这是可能的?

我尝试过这个:

    location ^/links/([^\.]+)$ {
            if (!-e $request_filename) {
            rewrite /links$ $scheme://$host$uri/ permanent;
            #rewrite ^/[_0-9a-zA-Z-]+(/wp-.*) /wp$1 last;
            #rewrite ^/[_0-9a-zA-Z-]+(/.*\.php)$ /wp$1 last;
        }
    }

    location ^([^\.]+)$ {
            rewrite "^(.*)$" /links/redirect.php?alias=$1 last;
    }

但不起作用。

我在 Debian Wheezy 64 位上使用 Nginx + ISPConfig + PHP5-FPM。

谢谢。

编辑1

    #location ~ ^/?$ {
    location = / {
        return 301 http://somdomato.com;
    }

    location ^/links/([^\.]+)$ {
            if (!-e $request_filename) {
            rewrite /links$ $scheme://$host$uri/ permanent;
            #rewrite ^/[_0-9a-zA-Z-]+(/wp-.*) /wp$1 last;
            #rewrite ^/[_0-9a-zA-Z-]+(/.*\.php)$ /wp$1 last;
        }
    }

    location ^([^\.]+)$ {
            rewrite "^(.*)$" /links/redirect.php?alias=$1 last;
    }

几乎,重定向可以,但 phURL 不起作用。phURL 位于:sdm.fm/links

谢谢。

答案1

好吧,我会写这样的东西:

# Here sdm.fm goes
location = / {
    return 301 http://somdomato.com;
}

# Here sdm.fm/anything
location / {
    rewrite "^(.+)$" /links/redirect.php?alias=$1 last;
}

location = /links/redirect.php {
    internal;
    ... fastcgi rules to get to your php-fpm ...
}

答案2

我认为这不是一个好主意,但添加以下位置应该可以完成这项工作:

location = / {
    return 301 http://somdomato.com;
}

相关内容