2015-12-02 121 views
0

我想在我的Web项目中创建以下场景,但由于我不是专业的Web开发人员,我不知道如何处理此问题。在Azure网站上的子域之间共享Web项目

让我们假设我有项目,主要领域:

http://foobar.com并在此我有一个链接到以下子域:

http://xx.foobar.com

http://yy.foobar.com

我想那每个托管在子域上的站点使用相同的代码,只有一个不同的参数从主页面发送到子域。这个参数将是一个JavaScript变量。我正在使用我的项目中的Azure Web Sites。这里的主要问题是如何通过这些子域来管理代码(现在我正在使用与GitHub的Continuos集成)(除了这个变量,每个子域的源代码都是相同的)。我应该从哪里开始搜索/阅读?

+0

你用什么框架和语言的改变? – Ansel

+0

纯前端没有后端 –

回答

1

您是否传递参数的任何值?或者它只是一个静态参数?如果它是静态的,那么可以使用JavaScript代码来读取URL中的子域名。

不知道你在服务器上使用什么语言,但你也应该能够通过服务器端代码读取子域。

但是,如果它的值是动态的,带有链接的主页面可以生成一个QueryString参数以在URL中传递。您的植入将根据您选择的语言而有所不同。

修订,额外的信息:

当你说“共享子域之间的项目源代码”,你的意思是要部署相同的Web应用程序到多个端点?

如果是这样,您可以在Azure(以前称为Azure网站)中为每个对应的子域创建一个单独的Web应用程序,并设置源代码控制以在您签入代码时部署到它们两个。

参考文献:

既然你没有服务器端的代码,我用你只有HTML/JavaScript的/ CSS文件。因此,您可以编写JavaScript代码以从URL中读取参数。

参考文献:

正如我早期的版本提到,你将建立主索引页面上的链接中查询字符串参数传递:

eg

希望帮助!

+0

我没有使用任何种类的后端语言,主要问题是如何共享子域之间的项目源代码,我将只传递字符串作为变量。 –

+0

我用更多的信息更新了答案,因为评论空间太小了。希望有帮助吗? –

0

首先,确保你使用通配符指向您的域名到您的蔚蓝网站(references

其次,在你的HTML头,使用JavaScript找到子域并分配到要使用

变量
var full_url = window.location.host; // e.g. subdomain.host.com 
var parts = full.split('.'); // split it 
var subdomain = parts[0]; 

现在你可以使用subdomain变量基于subdomain值您的网站(例如,改变的内容)

+0

不要忘了接受这个答案,如果它的作品,它也将帮助有同样问题的人 – Ansel