我已經做了一些沒有和解決方案的這個問題的研究。多個域來改變共享主機PHP文件的內容
設置如下:多個域名稱,www.domainA.com和www.domainB.com。 這兩個域都映射到LAMP服務器上的相同宿主文件夾。我希望該文件夾中的index.php文件能夠「知道」哪個域正在訪問這些文件並改變SQL中的內容。即加載特定於該域的不同客戶端ID。
我查看了$_SERVER['REMOTE_HOST']
和$_SERVER['HTTP_REFERRER']
後者已被明確聲明是不可靠的。我在一個足夠強大的解決方案之後。
.htaccess
不會做的伎倆(我不會想?)我正在考慮一些沿着域名DNS IP的行列,作爲行動的堅實來源。將不勝感激一些指導。
更新:有一些解決方案建議 - 我想有一個SQL表,其中將包含所有預期的域。 TABLE客戶端('id_client','client_name','client_url')並查詢此表,將'id_client'返回給$變量。
如果$ _SERVER ['HTTP_HOST']與數據庫中的client_url匹配,則返回相應的id_client。 .htaccess解決方案 - 無論多麼優雅 - 都需要不斷更新文件。我寧願儘可能在php和數據庫中保留解決方案。
$ _SERVER ['HTTP_HOST']失敗的情況是什麼?
謝謝托爾!是的,我沒有想到。然而,我沒有提到(抱歉),他們需要隱藏起來。在您的示例中,如果用戶要將index.php?client_id = a更改爲index.php?client_id = b,他們將查看錯誤的站點。這不像我想的那樣健壯。你或其他人是否可以想出其他方法來實現這個目標? – Tom 2011-12-21 02:42:09
@ user1108993 @Andrew這就是mod_rewrite的魔力!重寫是隱藏/內部的。用戶看到'domaina.com',但應用程序看到'?domain = a',或者您選擇重寫它。 – Thor 2011-12-21 02:59:40