如何将子域重定向到主域并保持相同的 URL?

发布于 2024-10-07 22:59:30 字数 367 浏览 5 评论 0原文

我的主域(www.mysite.com)指向我的服务器中的一个文件夹(/home/user_name/htdocs/mysite.com)。

我最近通过我的托管帐户创建了一个子域(m.mysite.com)。但它将它指向我的服务器中的一个新文件夹(/home/user_name/htdocs/m.mysite.com)。我无法编辑这个新子域指向的路径。我的所有文件都托管在我的主文件夹路径中。

我的要求 -

当用户访问 m.mysite.com 时,他应该被重定向到 mysite.com 但浏览器中的 URL 仍应为 m.mysite.com
我通过使用 $_SERVER['SERVER_NAME'] 检测子域来处理移动视图

My main domain(www.mysite.com) is pointing to a folder in my server (/home/user_name/htdocs/mysite.com).

I have recently created a subdomain(m.mysite.com) through my hosting account. But it is pointing it to a new folder (/home/user_name/htdocs/m.mysite.com) in my server. I am not able to edit the path to which this new subdomain points to. All my files are hosted in my main folder path.

My Requirement -

When a user visits m.mysite.com he should be redirected to mysite.com but the URL in the browser should still say m.mysite.com
I'm handling the mobile view by detecting the subdomain using $_SERVER['SERVER_NAME']

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

陌伤ぢ 2024-10-14 22:59:30

尝试使用下面的 iframe 代码在 m.mysite.com 子域的根目录中创建一个 index.html 文件。
(在看到“example.com”的地方使用“mysite.com”;StackOverflow 不允许我使用 mysite.com)。

<iframe
  src="https://www.example.com"
  style="
    position: fixed;
    top: 0px;
    bottom: 0px;
    right: 0px;
    width: 100%;
    border: none;
    margin: 0;
    padding: 0;
    overflow: hidden;
    z-index: 999999;
    height: 100%;
  ">
</iframe>

Try creating an index.html file in the root directory of m.mysite.com subdomain with the iframe code below.
(Use "mysite.com" where you see "example.com"; StackOverflow won't let me use mysite.com).

<iframe
  src="https://www.example.com"
  style="
    position: fixed;
    top: 0px;
    bottom: 0px;
    right: 0px;
    width: 100%;
    border: none;
    margin: 0;
    padding: 0;
    overflow: hidden;
    z-index: 999999;
    height: 100%;
  ">
</iframe>
月竹挽风 2024-10-14 22:59:30

我认为您应该能够使用此规则编写 .htaccess 文件,前提是它是同一用户并且具有对两个 URL 的读取权限:

RewriteEngine on
RewriteCond %{HTTP_HOST} ^m\.mysite\.com
RewriteRule (.*) ../mysite.com/$1 [L]

或者,您可以创建到主站点的符号链接,比方说:

./mysite.com
    dirs and folders

./m.mysite.com
    drwxr-xr-x main_site -> ../mysite.com

和 htaccess:

Options +FollowSymLinks
RewriteEngine On
RewriteRule ^/?mysite\.com 404.html [L] # Do not show the real filesystem layer
RewriteRule (.*) ./mysite.com/$1 [L]

I think you should able to write an .htaccess file with this rule, provided it is the same user and has read permisssions to both URLs:

RewriteEngine on
RewriteCond %{HTTP_HOST} ^m\.mysite\.com
RewriteRule (.*) ../mysite.com/$1 [L]

Or, you can make a symlink to the main site, let's say:

./mysite.com
    dirs and folders

./m.mysite.com
    drwxr-xr-x main_site -> ../mysite.com

And an htaccess:

Options +FollowSymLinks
RewriteEngine On
RewriteRule ^/?mysite\.com 404.html [L] # Do not show the real filesystem layer
RewriteRule (.*) ./mysite.com/$1 [L]
情绪 2024-10-14 22:59:30

我认为您可以在 m.mysite.com 下设置一个 htaccess 文件,并使用 RewriteRule 将所有请求指向不同的 URL。

RewriteEngine On
RewriteRule ^(.*)$ http://www.mysite.com/$1

I think you could set up an htaccess file under m.mysite.com with a RewriteRule that points all requests to a different URL.

RewriteEngine On
RewriteRule ^(.*)$ http://www.mysite.com/$1
烟织青萝梦 2024-10-14 22:59:30

这不是这样做的方法。

为 WP-Touch 或 MobilePress 等移动网站获取合适的插件,并制作特定于移动设备的主题。您不需要为此而使用 htaccess 或 httpd.conf 文件。

This is not the way to be doing it.

Get a proper plugin for mobile sites like WP-Touch or MobilePress, and do a mobile specific theme. You don't need to be mucking around with htaccess ot httpd.conf files for this bit.

因为看清所以看轻 2024-10-14 22:59:30
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_HOST} .
RewriteCond %{HTTP_HOST} !^m.mysite\.com
RewriteRule (.*) http://www.mysite.com/$1 [R=301, L]
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_HOST} .
RewriteCond %{HTTP_HOST} !^m.mysite\.com
RewriteRule (.*) http://www.mysite.com/$1 [R=301, L]
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文