我在 nginx 上使用 Passenger 在子域(例如 mydomain.com/site)上运行了一个 Ruby on Rails 应用程序。基本上,我希望它做的是让应用程序在子域(mydomain.com/site)上运行,并将域的根目录(mydomain.com)重定向到另一个域(例如 myseconddomain.com),但在 Web 服务器级别(没有另一个在域根目录运行的应用程序执行该重定向)。我不知道该怎么做(是否可以在 nginx.conf、.htaccess、mod_rewrite 等中设置,以及最终如何设置),我是新手。感谢您的任何想法。
编辑:我的 nginx.conf
server {
listen 80;
server_name www.mydomain.com;
root /server; # because site on sub URI is located in /server/site
passenger_enabled on;
passenger_base_uri /site;
}
答案1
这应该只是 .htaccess 中的 301 重定向。在域根目录中,创建或编辑 .htaccess 并添加以下行:
Redirect 301 / http://www.myseconddomain.com/
答案2
使用 nginx 创建第二个文档根目录(不知道如何操作;我不使用 nginx)。在 mydomain.com 的根目录中,创建一个标准 HTML 文件,其头部部分包含以下内容:
<meta http-equiv="refresh" content="0;url=http://myseconddomain.com/">
0 告诉网络浏览器在加载新的 URL 之前要等待多少秒。