2015-12-02 115 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