質問

私のドメイン上のユーザーにOpenIDサービスを提供する必要があります。それらはすべて、次のような一意のサブドメインを持っています:abc.example.comと私は彼らにabc.example.comを彼らのopenidのアイデンティティとして使用してほしい...

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

phpmyidはradに見えますが、単一ユーザーのためだけに機能しているようです...どのようにして微調整して、サブドメインを持つすべての人のために実行することができますか?または他に何ができますか?

役に立ちましたか?

解決

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

最後の部分に。 phpmyid-それは一人のアイデンティティのためだけです。残念ながら、この投稿は小さすぎて、これを行う方法について正確に説明できません。これらは、おそらく実装する必要があるいくつかのスニピットとより高いレベルのアイデアです。

まず、ファイル内のハードコーディングされた情報を使用して、データベース(ユーザー名、パスワードなど)に移動して、ユーザーをより簡単に追跡できるようにする必要があります。また、ユーザーの名前のみを使用して追跡することを余儀なくされます [A-Za-z0-9_] なので &,%,$,#,@,!, ,etc すべてがDNSを破り、ユーザーはプロバイダーにアクセスできなくなります。

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

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

ユーザーができるようになったので、データベース呼び出しを構成してユーザー情報を選択できます。次に、データベースの動的ユーザーデータを使用して「1つのユーザーphpmyID」のハードコード値を更新し、スクリプトは陽気な方法で続行する必要があります。 。 phpmyidを見てからしばらく経ちましたが、それがその背後にあるアイデアの大部分だと思います。

他のヒント

草原 軽量のOpenIDベースのインターネットIDサーバーです。さまざまなユーザー名とパスワードの組み合わせですべてのWebサイトを登録する代わりに、IDサーバーを使用してログインします。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top