注((元々この[[FAQ/41]]のページは、質問スペースと間違えたユーザが2004-10-23に作成し、すぐに解答がつけられたようですがその後2007-08-19まで放置されていました。2007-08-19現在では内容が古く、また、PukiWIki初心者が見て分かりにくい書き方になっており、公式サイトのFAQとしてふさわしくないので、2007-08-19に書き換えました。オリジナルのソースはコメントアウトしていますのでソースを見るか、2004-10-23から2007-08-19までの間のバックアップをご覧ください。))~

**認証による閲覧制限をかけた秘密ページは出来ますか? [#a48f97a2]
-種別 : 運用
-バージョン : --
***質問 [#d706b659]
公開ページと自分専用のプライベートページをどうやったら分けられますか?~
また、任意のページに対する閲覧・編集・検索でアクセス制御を行うには?

***回答 [#h4721cc4]
PukiWiki 1.3の場合は改造が必要になります。詳細は[[dev:PukiWiki/1.3/ちょっと便利に/任意のページごとの閲覧・編集制限]]を参照してください。

PukiWIki 1.4にはBasic認証による閲覧制限機能や編集制限機能があります。
設定するには、pukiwiki.ini.phpの中の以下の部分を書き換えてください。
 $auth_users = array(
  'Group1' => 'hogehoge', // 閲覧許可グループ名 => パスワード
  'Group2' => 'hegehege', // 編集許可グループ => パスワード
 );
 $auth_method_type = "pagename"; // ページ名で制限する
 $read_auth = 1; // 閲覧許可有効 (0で無効)
 $read_auth_pages = array(
  '/^☆.*$/' => 'Group1', // 閲覧制限ページ(正規表現) => 閲覧許可グループ名
 );
 $edit_auth = 0; // 編集許可有効 (0で無効)
 $edit_auth_pages = array(
  '/^.*$/' => 'Group2', // 編集制限ページ(正規表現) => 編集許可グループ名
 );
 $search_auth = 1; // 検索対象を閲覧可能ページだけに (0で無効)
上の例では、「☆」で始まる名前のページの閲覧に認証が必要になります。参考までに他にもいくつかの具体例を以下に示します。

+ すべてのページの編集に認証が必要、「:」で始まるページ名のページの閲覧に認証が必要
 $auth_users = array(
  'Group1' => 'hogehoge', // 閲覧許可グループ名 => パスワード
  'Group2' => 'hegehege', // 編集許可グループ => パスワード
 );
 $auth_method_type = "pagename"; // ページ名で制限する
 $read_auth = 1; // 閲覧許可有効 (0で無効)
 $read_auth_pages = array(
  '/^:.*$/' => 'Group1', // 閲覧制限ページ(正規表現) => 閲覧許可グループ名
 );
 $edit_auth = 1; // 編集許可有効 (0で無効)
 $edit_auth_pages = array(
  '/^.*$/' => 'Group2', // 編集制限ページ(正規表現) => 編集許可グループ名
 );
 $search_auth = 1; // 検索対象を閲覧可能ページだけに (0で無効)
+ 閲覧は誰でも自由に、編集だけ制限する 
 $read_auth = 0;
 $edit_auth = 1;
+ 全ページに編集制限をかけるが、「☆」で始まるページ名だけは編集制限なし 
 $edit_auth = 1;
 $edit_auth_pages = array(
  '/^[^☆].*$/' => 'Group2', // 編集制限ページ(正規表現) => 編集許可グループ名
 );
+ 全ページに編集制限をかけるが、「ゲストブック」「練習」「掲示板」だけは編集を許可
 $edit_auth = 1;
 $edit_auth_pages = array(
 '/^((?!^(ゲストブック|練習|掲示板)$).)*$/' => 'Group2', // 編集制限ページ(正規表現) => 編集許可グループ名
 );

~
:Reference|
[[正規表現]]~
[[Q&A/運営]]~
[[質問箱/308]]~
[[dev:PukiWiki/1.3/ちょっと便利に/任意のページごとの閲覧・編集制限]]~
[[dev:PukiWiki/1.4/ちょっと便利に/任意のページごとの閲覧・編集制限]]~




//_/_/_/_/_/_/_/_/ ここから2004-2007/08のソース
//_/_/_/ trackerのエラー回避のため、中見出しと小見出しだけ書き換えてあります。
//
//[中見出し(trackerのエラー回避)]秘密ページは出来ますか? [#a48f97a2]
//-種別 : 動作環境
//-バージョン : --
//[小見出し(trackerのエラー回避)]質問 [#d706b659]
//私は公有ページとプライベートページがありますので、どうやって分けられる?
//
//例えば、別のDirectoryで?
//[小見出し(trackerのエラー回避)]回答 [#h4721cc4]
// 
//追記:
//対象ページを参考しましたが、まだ分からない。
//例えば、php.ini で、下記を入れて:
//  '/DeepSecret/'  => 'hoge',
//
//新しいページを作るときに、どうやってページをDirectoryに入れる?
//例えば、「新規」ボタンを押した、「 /secret/pagename 」を入力しましたが、誰でも見えちゃう、、、
//
//>> 英語で:
//i created the directory entries in the ...php.ini
//but now how do i create new pages to be inside the "secret" directory?
//I tried "new page" 
//  /secret/pagename
//as the page name, but the / gets escaped to a safecode it looks like.
//
//手伝ってくれて、さきにありがとうございます。
//thanks in advance for any help!
//
//:Reference|
//[[dev::CategoryDev/Document/pukiwiki.ini.php]]~
//[[dev:PukiWiki/1.4/ちょっと便利に/任意のページごとの閲覧・編集制限]]
//
//----
//see also [[質問箱/308]].
//
//Check $auth_method_type and $read_auth in 'pukiwiki.ini.php'.
// $auth_method_type = 'pagename'
// $read_auth = 1;
//
//FAQ is not a question page, but summary page of frequently asked question and its answer.A question is to [[続・質問箱]].


トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Site admin: PukiWiki Development Team

PukiWiki 1.5.3+ © 2001-2020 PukiWiki Development Team. Powered by PHP 5.6.40-0+deb8u12. HTML convert time: 0.015 sec.

OSDN