Herhangi bir şekilde ben 2 fark etki alanı içindeki bir bilgiyi paylaşabilirsiniz?

7 Cevap

Herhangi bir 2 fark alanları içinde ama aynı sunucuda (o cookie, oturum, değişken olabilir ...) Ben bir bilgi paylaşımında herhangi bir şekilde var olduğunu biliyor mu?

Örnek:

Ben, aynı sunucu içinde 2 alanı var biri exmaple.com.au denir ve diğer bir friendly.com.au olduğunu. Ben iki etki için bir değişken paylaşabilirsiniz herhangi bir yolu var mı? (Ki $ valiable = 'exampleLogin' let)

7 Cevap

Değil kurabiye veya seans (ben onları anlamak gibi) ile.

Iki site erişiminiz varsa dosya veya bir veritabanında eşyalarını saklamak olabilir.

Alternatif olarak, cURL içine bakmak isteyebilirsiniz.

Tarayıcılar çerezleri için bir "aynı köken" ilkesine bağlı, bu yüzden bir siteden bir çerez ayarı başka etkileyemez. Fiziksel sunucu bu durumda önemli değildir.

POST yoluyla giriş amaç ve veri alışverişi için bir siteyi kullanın veya GET, ama yine de iki ayrı tanımlama korumak gerekiyor olabilir. Iki site aynı veritabanına erişiminiz varsa, bu her ikisi için ayrı ayrı giriş formları kullanmak, ancak ala bir haber yayınlamak için en iyisi "zaten kayıtlı olduğunuz eğer sitex.com adresinin giriş kullanabilirsiniz!"

Bu oldukça geniş bir soru.

Cookie / Oturum - gerçekte etki alanları arasında bunları paylaşmak değil, hemen hemen aynı şey (bir tarayıcı kısıtlama var)

Değişkenler - Ben bile "pay değişkenleri" demek olacağını bilmiyorum. Sen ("Hisse-nothing mimarisi") hiç php scriptler arasındaki bu yapamam

Ortak bir yol tek bir sitede bir veritabanında (aynı sunucu üzerinde muhtemelen bir dosya varsa) veri depolamak için olacaktır ve daha sonra sitesinden ya da onu okuyabilirsiniz.

Yapabildin ya $_POST veya $_GET bir alandan diğerine, ya da okumak ve dosya sistemi ya da paylaşılan bir veritabanı yazma.

Bu genellikle bir saydam GIF kullanılarak çözülmektedir.

Örneğin, site1.com üzerinde, bir görüntü şunlardır:

<img src="http://site2.com/mybug.php?segment1=data1&segment2=data2" height="0" width="0">

Site2 o sorgu dizesi içinde isim / değer çiftleri dayalı, Site2 sonraki girişler okuyacak (mybug.php olarak) bir çerez ve http yanıt gövdesinde bir saydam gif döndürür.

Bu, örneğin, reklam hedefleme sistemleri, büyü yapmak nasıl. Bu tarayıcı güvenlik ayarları tarafından atlatılabilir ve güvenilir çalışması için bir gizlilik politikası dosyası eklemek gerekebilir.

Ihtar tüm hassas kısmında ise sadece sunucu üzerinde bu verileri güven değil ki; diğer bir deyişle, kullanıcı adlarını, parolaları veya benzeri iletmek için kullanmak istemiyorum. Eğer hassas veri göndermek istiyorsanız, paylaşılan bir sır kullanımı ve oldukça güvenli bir şifreleme mekanizması kullanmak ve en az değerleri şifrelemek gerekir.

Diğerleri dediği gibi, (which means no session either), çünkü Same Origin Policy, web tarayıcılarında uyguladı, farklı etki alanları arasında bilgi paylaşımı için bir çerez kullanamazsınız.

Yani, paylaşmak istediğiniz bilgileri saklamak için dosyaları (eğer aynı sunucuda olduğu gibi), ya da bir veritabanı kullanarak bitireceğiz.

Eğer sahip olacak sorun, hem sitelerinde bu bilgiyi kullanıcıya "eklemek" için; Eğer kullanıcı oturum açtığında her iki site bir çerez oluşturmak için bir yol gerekebilir; 1x1 şeffaf gif veya 1x1 iframe yapmak için yolu vardır: sadece ikinci site kendi çerez oluşturmak için gereken bilgileri içeren bazı belirteci geçmektedir.


If what you want is to get a user identified on two (or more) websites without having to log in twice, you might be interested in what is called Single sign-on.

PHP var (I've not used either of those, so I cannot recommend any) zaten mevcut çözümlerin bir çift vardır.

Ayrıca burada SO kullanılan OpenID gibi bir şey, ilginizi çekebilir ;-)