我有一个网站foo.com上的wordpress,我想做这个foo.com/mexico,foo.com/venezuela,交付不同的城市与相同的领域(没有wordpress多站点)不同的/server。
我不是要求按城市检测ip,而是要求服务器和/或域/dns配置来检测ip。
我知道实现这个目标还有其他的方法,但我想知道这个方法。
下面是一个示例:
br
co
编辑解决方案
这是我的解决方案:
这对我有用。如果我想要另一个/server,我只是重复另一个名字,例如‘委内瑞拉’。子域名将被.htaccess隐藏,这个'example.foo.com‘看起来就像’foo.com/委内瑞拉‘。
发布于 2015-05-30 05:43:09
您所描述的是一个反向代理。
您可以使用apache的扩展mod_proxy来设置它。就我个人而言,我并没有触及这个问题,但我的回答是建议您看看nginx。这是一个死简单的反向代理。您可以轻松地在apache前面运行nginx,拦截请求并将它们传递给不同的服务器,或者直接发送html文件。
nginx-config可以非常简单,如下所示:
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,并且增加了一些(通常是次要的)加载时间。
发布于 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。
重复您所需的多个子域和服务器。
发布于 2015-05-30 05:55:28
你的解决办法是:
1.您可以为每台服务器使用记录和子域。
2.您可以使用您的etc服务器配置将用户中继到目标服务器(Apache、NGINX等)。
但在这里,我看到你在询问来自多台服务器的Wordpress。静态内容(CDN)只能有多台服务器,但数据库必须位于一个位置,除非要使用云DB。
https://stackoverflow.com/questions/30542389
复制相似问题