●インストール方法
参考URL:Wiki構築 Pukiwiki
参考URL:はじめての自宅サーバ構築 - Fedora/CentOS -
参考URL:システム奮闘記:その52 Pukiwiki設定入門
Wikiを使いたいので、CentOS 7にインストールします。
最新版をPukiWikiからダウンロードします。
作業ディレクトリを/usr/local/srcとしています。
pukiwikiの設定ファイルの編集します。
Wiki FrontPage「凍結解除」が表示されていることを確認します。
「編集」クリック → 「xxxx は編集できません(凍結解除)」と表示
「(凍結解除)」をクリック → 「凍結解除用のパスワードを入力してください。」を表示
凍結解除用パスワード入力 → 編集画面
以上で設定は完了です。
●アップロードサイズの変更
参考URL:Q. 添付ファイルのアップロードサイズの制限を変更したい
/etc/php.iniで下記値を変更します。
memory_limit > post_max_size > upload_max_filesize となるように下記の設定を変更する必要があります。
●Pukiwikiの更新方法
参考URL:Pukiwiki 1.5.2 キターので、早々に更新してみた(EUC⇒UTFにもしてみた)
Pukiwikiはここからダウンロード出来ます。
必ずバックアップします。
この時に設定しているオーナー及びグループを確認しておくと良いでしょう。
バージョンアップします。
●13Mバイトのファイルをアップロードできない
参考URL:Request Entity Too Largeで投稿できない
10Mバイトのファイルをアップロードすることが出来るのに、13Mバイトを超えるくらいになるとアップロード出来なくなりました。
ModSecurityのログに下記が記録されていました。
参考URL:Wiki構築 Pukiwiki
参考URL:はじめての自宅サーバ構築 - Fedora/CentOS -
参考URL:システム奮闘記:その52 Pukiwiki設定入門
Wikiを使いたいので、CentOS 7にインストールします。
最新版をPukiWikiからダウンロードします。
作業ディレクトリを/usr/local/srcとしています。
# cd /usr/local/src # sha256sum pukiwiki-1.5.4_utf8.zip cdb9298a1a1f9395c3fa0252cdaa7d80858ea40cf9044c6ac2edf68b97eef329 pukiwiki-1.5.4_utf8.zip # unzip pukiwiki-1.5.4_utf8.zip # ls pukiwiki-1.5.4_utf8 COPYING.txt UPDATING.txt default.ini.php ja.lng.php rules.ini.php INSTALL.txt attach diff keitai.ini.php skin README.en.txt.zip backup en.lng.php lib wiki README.txt cache image plugin wiki.en.zip UPDATING.en.txt.zip counter index.php pukiwiki.ini.php # mv pukiwiki-1.5.4_utf8 pukiwiki # cp -R pukiwiki /var/www/html/ # chown -R apache:apache /var/www/html/pukiwiki/管理者及び利用者のパスワードをMD5ハッシュ値で生成します。
管理者パスワードの生成(MD5アルゴリズム) (下記の「password」文字列を任意のパスワード文字列に変更して下さい。) # echo -n password | md5sum 5f4dcc3b5aa765d61d8327deb882cf99 - 認証ユーザパスワードの生成(MD5アルゴリズム) (下記の「himitsu」文字列を任意のパスワード文字列に変更して下さい。) # echo -n himitsu | md5sum f1a0e73e5d7fc293952d380e32fda73c -各々の実行結果をメモしておいてください。
pukiwikiの設定ファイルの編集します。
# vi /var/www/html/pukiwiki.ini.php 管理者名の設定 // Site admin's name (CHANGE THIS) $modifier = '管理者'; 管理者のWebサイトURLを設定 // Site admin's Web page (CHANGE THIS) $modifierlink = 'https://www.bigbang.mydns.jp/pukiwiki/'; 管理者パスワードの設定(上記のMD5で生成した実行結果) // Default: always fail $adminpass = '{x-php-md5}5f4dcc3b5aa765d61d8327deb882cf99'; 認証ユーザの設定 ///////////////////////////////////////////////// // User definition $auth_users = array( // Username => password 'foo' => 'foo_passwd', // Cleartext 'bar' => '{x-php-md5}f53ae779077e987718cc285b14dfbe86', // PHP md5() 'bar_passwd' 'hoge' => '{SMD5}OzJo/boHwM4q5R+g7LCOx2xGMkFKRVEx', // LDAP SMD5 'hoge_passwd' ); ↓ 上記部分を以下に変更 $auth_users = array( 'linux' => '{x-php-md5}f1a0e73e5d7fc293952d380e32fda73c', // PHP md5() 'linux_passwd' ); 上記の設定では「linux」という認証ユーザを作成し パスワードは、上記の認証ユーザパスワードの生成で生成した実行結果を設定 (「linux」というユーザは「himitsu」というパスワードで認証される) 閲覧認証と編集認証を有効にする(認証可ユーザのみ編集できるようにする) ///////////////////////////////////////////////// // Read auth (0:Disable, 1:Enable) $read_auth = 0; $read_auth_pages = array( // Regex Groupname or Username '#PageForAllValidUsers#' => 'valid-user', '#HogeHoge#' => 'hoge', '#(NETABARE|NetaBare)#' => 'foo,bar,hoge', ); ↓ 上記部分を以下に変更 $read_auth = 1; $read_auth_pages = array( // Regex Groupname or Username //'#PageForAllValidUsers#' => 'valid-user', //'#HogeHoge#' => 'hoge', //'#(NETABARE|NetaBare)#' => 'foo,bar,hoge', '##' => 'linux', ); ///////////////////////////////////////////////// // Edit auth (0:Disable, 1:Enable) $edit_auth = 1; $edit_auth_pages = array( // Regex Username '#BarDiary#' => 'bar', '#HogeHoge#' => 'hoge', '#(NETABARE|NetaBare)#' => 'foo,bar,hoge', ); ↓ 上記部分を以下に変更 $edit_auth_pages = array( // Regex Username //'#BarDiary#' => 'bar', //'#HogeHoge#' => 'hoge', //'#(NETABARE|NetaBare)#' => 'foo,bar,hoge', '##' => 'linux', );その他の変更箇所
ページ名変更 $page_title = 'PukiWiki'; ↓ 上記部分を以下に変更 $page_title = 'hogehoge PukiWiki';DirectoryIndexにindex.phpが記載されていない場合、追加します。
# vi /etc/httpd/conf/httpd.conf DirectoryIndex index.shtml index.html ↓ DirectoryIndex index.shtml index.html index.php # systemctl reload httpd SSLを利用している場合 # vi /etc/httpd/conf.d/ssl.conf DirectoryIndex index.shtml index.html ↓ DirectoryIndex index.shtml index.html index.php # systemctl reload httpd動作確認のため、下記URLにアクセスします。
https://www.bigbang.mydns.jp/pukiwiki/FrontPageのページが表示されること確認します。
Wiki FrontPage「凍結解除」が表示されていることを確認します。
「編集」クリック → 「xxxx は編集できません(凍結解除)」と表示
「(凍結解除)」をクリック → 「凍結解除用のパスワードを入力してください。」を表示
凍結解除用パスワード入力 → 編集画面
以上で設定は完了です。
●アップロードサイズの変更
参考URL:Q. 添付ファイルのアップロードサイズの制限を変更したい
/etc/php.iniで下記値を変更します。
memory_limit > post_max_size > upload_max_filesize となるように下記の設定を変更する必要があります。
; Maximum amount of memory a script may consume (8MB) memory_limit = 8M ; Maximum size of POST data that PHP will accept. post_max_size = 8M ; Maximum allowed size for uploaded files. upload_max_filesize = 2M3つの値を変更後、plugin/attach.inc.php に定義されている以下の箇所を変更します。
// Max file size for upload on PHP (PHP default: 2MB) ini_set('upload_max_filesize', '2M'); // Max file size for upload on script of PukiWikiX_FILESIZE define('PLUGIN_ATTACH_MAX_FILESIZE', (1024 * 1024)); // default: 1MBこれらのファイルの変更後、Webサーバを再起動してください。
●Pukiwikiの更新方法
参考URL:Pukiwiki 1.5.2 キターので、早々に更新してみた(EUC⇒UTFにもしてみた)
Pukiwikiはここからダウンロード出来ます。
必ずバックアップします。
# cp -rp /var/www/html/pukiwiki /var/www/html/pukiwiki.oldバックアップ先のディレクトリの存在を確認します。
# ls -l /var/www/html|grep "^d"心配であればディレクトリ内を確認します。
この時に設定しているオーナー及びグループを確認しておくと良いでしょう。
# ls -l /var/www/html/pukiwiki.oldダウンローとしてきたzipファイルを展開します。
# cd /usr/local/src # unzip pukiwiki-1.5.3_utf8.zip/usr/local/src/pukiwiki-1.5.3_utf8に展開されます。
バージョンアップします。
# \cp -rp pukiwiki-1.5.3_utf8/* /var/www/html/pukiwiki必要に応じて、オーナー及びグループを元に戻します。
# chown -R apache:apache /var/www/html/pukiwiki設定ファイルと記事ディレクトリをコピーします。
# cd /var/www/html/pukiwiki # cp ../pukiwiki.old/pukiwiki.ini.php . # mv wiki wiki.old # \cp -rp ../pukiwiki.old/wiki . # cp -p ../pukiwiki2.old/plugin/attach.inc.php ./plugin/
●13Mバイトのファイルをアップロードできない
参考URL:Request Entity Too Largeで投稿できない
10Mバイトのファイルをアップロードすることが出来るのに、13Mバイトを超えるくらいになるとアップロード出来なくなりました。
Request Entity Too Large The requested resource /pukiwiki2/index.php does not allow request data with POST requests, or the amount of data provided in the request exceeds the capacity limit.どうもModSecurityが関係しているようです。
ModSecurityのログに下記が記録されていました。
Message: Request body (Content-Length) is larger than the configured limit (13107200)./etc/httpd/conf.d/mod_security.confを変更します。
# cp -p /etc/httpd/conf.d/mod_security.conf /etc/httpd/conf.d/mod_security.conf_20201010 # vi /etc/httpd/conf.d/mod_security.conf SecRequestBodyLimitの値を大きくします。 # systemctl restart httpdこれでアップロードできるようになりました。