2

ドメインのユーザーに openid サービスを提供する必要があります。それらはすべて abc.example.com のような固有のサブドメインを持っており、openid ID として abc.example.com を使用してほしい...

私はこれを読みました - https://www.myopenid.com/help#own%5Fdomain - しかし、それは (a) 1 人のユーザーと (b) 既存の myopenid/similar アカウントを持つ必要があるように見えます...

phpmyid は派手に見えますが、単一のユーザーに対してのみ機能するようです...サブドメインを持つすべてのユーザーに対して実行できるように微調整するにはどうすればよいですか? または、他に何ができますか?

4

1 に答える 1

3

サブドメインは簡単な部分です。そのためには、基本的にこの DNS レコードを作成する「ワイルドカード DNS」が必要*.domain.com IN A 10.10.0.1です。ドメインと IP をそれぞれ自分のものに置き換えます。次に、ワイルド カード ドメインを読み取るように任意の Web サーバーをセットアップする必要があります (これは通常、Apache で次のように機能しますServerAlias *.domain.comが、Web サーバーごとに異なります。

最後の部分に進みます。phpMyID - 1 人の ID のみです。残念ながら、この投稿は小さすぎて、これを行う方法を正確に説明することはできません. これらは、おそらく実装する必要があるいくつかのスニピットと高レベルのアイデアです。

最初に、ファイル内のハードコードされた情報を取得し、それをデータベース (ユーザー名、パスワードなど) に移動して、ユーザーをより簡単に追跡できるようにする必要があります。[A-Za-z0-9_]また、DNS を壊すだけでユーザー名を追跡する&,%,$,#,@,!, ,etc必要があり、ユーザーはプロバイダーにアクセスできなくなります。

また、アクセスされている現在のホスト名が何であるかを知る必要があります。

<?php
$hostname = $_SERVER['SERVER_NAME'];
$username = basename($hostname, ".domain.com"); // Replace .domain.com with your domain
?>

これでユーザーができたので、そのユーザー情報を選択するデータベース呼び出しを構成できます。次に、「1 人のユーザーの phpMyID」の一度ハードコードされた値をデータベースからの動的ユーザー データで更新すると、スクリプトは順調に進みます。 . phpMyID を見てからしばらく経ちましたが、それがその背後にあるアイデアの大部分であると思います。

于 2010-07-01T11:57:18.843 に答える