首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何具有相同域的不同/servers?

如何具有相同域的不同/servers?
EN

Stack Overflow用户
提问于 2015-05-30 04:51:25
回答 3查看 18.7K关注 0票数 10

我有一个网站foo.com上的wordpress,我想做这个foo.com/mexicofoo.com/venezuela,交付不同的城市与相同的领域(没有wordpress多站点)不同的/server

我不是要求按城市检测ip,而是要求服务器和/或域/dns配置来检测ip。

我知道实现这个目标还有其他的方法,但我想知道这个方法。

下面是一个示例:

br

co

编辑解决方案

这是我的解决方案:

  1. 创建子域,example.foo.com指向另一台服务器。
  2. 在主服务器上创建一个文件夹,其名称为链接,例如“墨西哥”
  3. 在此文件夹中创建了一个.htaccess: RewriteEngine打开 RewriteCond %{REQUEST_URI} ^/墨西哥RewriteRule ^(.*)$ http:// RewriteRule。福哥。com/1美元[R=301,L,P

这对我有用。如果我想要另一个/server,我只是重复另一个名字,例如‘委内瑞拉’。子域名将被.htaccess隐藏,这个'example.foo.com‘看起来就像’foo.com/委内瑞拉‘。

EN

回答 3

Stack Overflow用户

发布于 2015-05-30 05:43:09

您所描述的是一个反向代理

您可以使用apache的扩展mod_proxy来设置它。就我个人而言,我并没有触及这个问题,但我的回答是建议您看看nginx。这是一个死简单的反向代理。您可以轻松地在apache前面运行nginx,拦截请求并将它们传递给不同的服务器,或者直接发送html文件。

nginx-config可以非常简单,如下所示:

代码语言:javascript
复制
server {
    listen       80;
    server_name  example.org  www.example.org;
    location /mexico/ {
        # We could have an apache server running on another port...
        proxy_pass http://127.0.0.1:8000;
    }
    location /venezuela/ {            
        proxy_pass http://123.123.123.123:8000;  # ...or another server.
    }
    location /bulgaria/ {
        # Or just serve some static files 
        # In apache, do you set up a virtual host for this? christ.
        root /var/www/static_html;

        # If static html is all you have, what is apache even doing 
        # on your server? Uninstall it already! (As I said; opionated!)
    }
}

编辑:几年后我找到了自己的答案,我只想补充一点,OP选择的301重写规则增加了浏览器必须等待的另一个请求,然后才能重定向到真正的地址。301-到目前为止,请求仍然被认为是糟糕的SEO,并且增加了一些(通常是次要的)加载时间。

票数 12
EN

Stack Overflow用户

发布于 2015-05-30 04:57:07

您需要使用子域,并在您的域注册员中设置A记录,以便将每个子域映射到不同的服务器。

这里有一个相关的问题。注意,它已经关闭,但是所选的答案是您想要的:不同主机上的子域

one.yourdomain.com ->指向ServerA

two.yourdomain.com ->指向ServerB

有信息在高爸爸的网站也。如果您不使用GoDaddy,则流程将类似:https://support.godaddy.com/help/article/4080/managing-a-domain-names-subdomains

你进入你的域名注册程序,在那里你可以编辑你的域名设置。它可能会出现在一些关于DNS的内容中。你想加入一个新的“唱片”。

有些注册用户只允许你输入“你的子域”、服务器的IP和TTL (生存时间)。

因此,输入您的第一个子域、您希望它指向的服务器的IP以及通常为3600的TTL (如果它要求的话)。

然后添加另一个"A记录“,仅用于您的其他子域、该服务器的IP和TTL。

重复您所需的多个子域和服务器。

票数 3
EN

Stack Overflow用户

发布于 2015-05-30 05:55:28

你的解决办法是:

1.您可以为每台服务器使用记录和子域。

2.您可以使用您的etc服务器配置将用户中继到目标服务器(Apache、NGINX等)。

但在这里,我看到你在询问来自多台服务器的Wordpress。静态内容(CDN)只能有多台服务器,但数据库必须位于一个位置,除非要使用云DB

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30542389

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档