我有一个域名(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;
}