【发布时间】:2015-02-24 05:01:37
【问题描述】:
我有一个主域“my_domain.com”和几个子域(“sub1.my_domain.com”、“sub2.my_domain.com”...)。可以将主域请求为“my_domain.com”和“www.my_domain.com”。
我需要将状态为 301 的所有请求从“www.domain.com/.../any_url”重定向到“domain.com”。或者,最好是来自“www.domain.com/”的所有请求.../any_url”到“domain.com/.../any_url”。
我已经阅读了一些教程,但不明白什么是标准和最简单的方法。该网站正在使用 Rails、Passenger、Apache 和 Linux。
这是我在 /etc/apache2 中的内容
root@my_user# ls -al
total 88
drwxr-xr-x 7 root root 4096 Dec 26 19:22 .
drwxr-xr-x 111 root root 4096 Dec 23 03:27 ..
-rw-r--r-- 1 root root 8346 Feb 6 2012 apache2.conf
drwxr-xr-x 2 root root 4096 Dec 26 19:09 conf.d
-rw-r--r-- 1 root root 1322 Feb 6 2012 envvars
-rw-r--r-- 1 root root 0 Dec 26 2013 httpd.conf
-rw-r--r-- 1 root root 31063 Feb 6 2012 magic
drwxr-xr-x 2 root root 12288 Apr 16 2014 mods-available
drwxr-xr-x 2 root root 4096 Dec 30 2013 mods-enabled
-rw-r--r-- 1 root root 750 Feb 6 2012 ports.conf
drwxr-xr-x 2 root root 4096 Sep 22 13:22 sites-available
drwxr-xr-x 2 root root 4096 Sep 22 13:22 sites-enabled
我该怎么做?如何通过 mod_rewrite、apache2.conf、/etc/apache2/sites-available/my_domain.com 或使用其他方式来实现?我很困惑。
更新:
# ls -al /etc/apache2/sites-available
total 32
drwxr-xr-x 2 root root 4096 Sep 22 13:22 .
drwxr-xr-x 7 root root 4096 Dec 26 19:22 ..
-rw-r--r-- 1 root root 2716 May 16 2014 my_site-old
-rw-r--r-- 1 root root 1499 Sep 22 13:22 my_site.my_domain123.com
-rw-r--r-- 1 root root 950 Feb 6 2012 default
-rw-r--r-- 1 root root 7469 Feb 6 2012 default-ssl
-rw-r--r-- 1 root root 1511 Dec 30 2013 puppetmaster
【问题讨论】:
标签: ruby-on-rails ruby apache redirect passenger