ファイルのパーミッション設定

あらためて言うほどでもないですが、パーミッションの設定に限ってなら Linux FreeBSD NetBSD etc...似たようなもんです。

注意
レンタルサーバーを利用している場合や、サーバーに導入しているモジュールやCGI プログラムなどの中には、推奨設定をマニュアルで指示している場合があります(例: 666 → 606)。この場合、読み替えて設定しないと、PukiWiki が正常に動作しないことがあります。

1.4.4 -

初期状態での構成図・パーミッション値は、PukiWikiのファイル一覧 - PukiWiki/Install/インストール方法 をご覧ください。。

1.4 - 1.4.3

初期状態での構成図・パーミッション値は、PukiWikiのファイル一覧 - PukiWiki/Install/1.4-1.4.3 をご覧ください。

1.3.x

配布ファイルを解凍して最初に設置する段階でのパーミッション設定

解凍して出来る「pukiwiki」というディレクトリ名をまんま使ってると仮定

名前の後にスラッシュがついてるのはディレクトリ、なにもないのはファイルの意

*はワイルドカードを表しています。今回は全部ファイルが対象です

  • pukiwiki/ (755)
    • face/ (755)

  • image/ (755)

  • plugin/ (755)

  • skin/ (755)

  • cache/ (777)

  • wiki/ (777)

  • * (644)

devel/ディレクトリは通常使用にはいらない

デフォルト状態で pukiwiki.ini.php のディレクトリ設定は下のようになってるはず

  • pukiwiki.ini.php
    /////////////////////////////////////////////////
    // ディレクトリ指定 最後に / が必要 属性は 777
    /////////////////////////////////////////////////
    // データの格納ディレクトリ
    define('DATA_DIR','./wiki/');
    /////////////////////////////////////////////////
    // 差分ファイルの格納ディレクトリ
    define('DIFF_DIR','./diff/');
    /////////////////////////////////////////////////
    // バックアップファイル格納先ディレクトリ
    define('BACKUP_DIR','./backup/');
    /////////////////////////////////////////////////
    // プラグインファイル格納先ディレクトリ
    define('PLUGIN_DIR','./plugin/');
    /////////////////////////////////////////////////
    // キャッシュファイル格納ディレクトリ
    define('CACHE_DIR','./cache/');

これを見ると diff、backup ディレクトリがないので作成します。

あと、attach 使うなら attach ディレクトリも必要

最終的なディレクトリ構成

  • pukiwiki/ (755)
    • face/ (755)
      • * (644)
    • image/ (755)
      • * (644)
    • plugin/ (755)
      • * (644)
    • skin/ (755)
      • * (644)
    • cache/ (777)
      • * (666)
    • wiki/ (777)
      • * (666)
    • diff/ (777)
    • backup/ (777)
    • attach/ (777)
    • * (644)

後は設置場所によって適当に変更していけばよいかと

例えば、/home/wiki/public_html/(ここにpukiwikiディレクトリ以下をいれ込む場合)

  • pukiwiki/ (755)
    • ...

  • public_html/ (755)
    • ...

になるってくらいですね。

オーナー(所有者)の設定

あらかじめ設定を適切なものに変更してから、PukiWiki を使い始めましょう。
ファイルの書き換え時などにサーバーがオーナー設定を変更してしまうと、パーミッションの設定も一緒に書き換えられてしまう場合があります。

Apache の場合(httpd.conf)

User apache
Group apache

User および Group で定義している名前で、オーナー変更しておく。

chown -R apache:apache ./

補足事項

気をつけること

文字コード、改行コードさっぱりな人がここへ辿りつくとは考えにくいですが、まあ、念のため。

設置場所がLinuxなどのUNIX系な場合で

  • ローカル( windows )で設定ファイルなどを編集
  • 編集したものを FTP で転送上げ

な人は、その編集に使用するエディタの文字コードはもちろん改行コードも気にとめておいた方が無難。

テキストファイル(pukiwiki.ini.php 等)は全て

  • 文字コード
    • EUC-JP(UTF-8 版は、UTF-8)
  • 改行コード
    • LF

簡単なテストをした限りでは、改行コードが CR+LF であったとしても特に問題なく稼働するようですが、心情的*1に LF で統一してたほうがよさそう。

  • 編集は、EUC-JP/LFを取り扱えるエディタで行なう
    • Windows のアプリ「メモ帳」ではこれらのコードを扱えません。こちらのQ&Aを参考にして他のエディタを使うようにして下さい。
  • FTPクライアントをなんとなく使ってて今までコードなんて気にもしなかったお方
    • 拡張子で判断するコード変換がかかってるはずなんで、それを調整する
    • EUC-JP/LFを取り扱えるエディタで編集したものを無変換あるいはバイナリーとしてアップロードする

とまあ、ここまでの説明でとりあえず動くはず

ですが、とりあえずです。文字コード、改行コード、ソフトの性質等、わからない部分があるならば一度調べることをお勧めします。

インストール説明、配布ファイルのreadme.txt(README.txt) を見ただけで次々とフレーズが受かぶほどじっくり読んで実践、調整したけど、なぜか動かない...

  • 設置先がレンタルサーバー等の管理者が自分以外の場合はそちらに聞いてみる
  • 管理者が自分の場合は...Googleに聞いてみる

UNIX系OSの場合の例

  • 前提
    • 全てのファイルパーミッションは「777」
    • カレントディレクトリはpukiwikiのトップディレクトリ
    • サーバー環境(導入しているモジュールやCGI プログラムなど)によっては、パーミッション設定を読み替えて設定しないと、正常に動作しない場合があります。
      • レンタルサーバーを利用する場合は、そちらのマニュアルやユーザーガイドなどを確認して下さい。
      • 自分でサーバーを運用している場合は、導入しているモジュールやCGI プログラムなどのマニュアルを確認して下さい。
      • CGI版PHPで運用する場合は、PukiWiki/CGI版PHPで動作させるには の情報も確認して下さい。
      • インストール説明には、いくつかの環境への導入に関する情報があります。
         
  • 1.4.4 -
    • カレントディレクトリ
      $chmod 755 .
      $chmod 644 *.php
      $chmod 644 *.lng
    • 読み書きするフォルダとファイル
      $chmod 777 ./attach 
      $chmod 777 ./backup 
      $chmod 777 ./cache 
      $chmod 777 ./counter 
      $chmod 777 ./diff 
      $chmod 777 ./wiki 
      $chmod 666 ./wiki/*.txt
    • 見るだけのフォルダとファイル
      $chmod 755 ./image 
      $chmod 644 ./image/*.png
      $chmod 644 ./image/*.gif
      $chmod 755 ./image/face 
      $chmod 644 ./image/face/*.png
      $chmod 755 ./lib
      $chmod 644 ./lib/*.php
      $chmod 755 ./plugin 
      $chmod 644 ./plugin/*.php
      $chmod 755 ./skin 
      $chmod 644 ./skin/*.php
      $chmod 644 ./skin/*.css
  • 1.3.x, 1.4 - 1.4.3
    • カレントディレクトリ
      $chmod 755 .
      $chmod 644 *.gif
      $chmod 644 *.png
      $chmod 644 *.php
      $chmod 644 *.lng
    • 読み書きするフォルダとファイル
      $chmod 777 ./attach 
      $chmod 777 ./backup 
      $chmod 777 ./cache 
      $chmod 777 ./counter 
      $chmod 777 ./diff 
      $chmod 777 ./wiki 
      $chmod 666 ./wiki/*.txt
    • 見るだけのフォルダとファイル
      $chmod 755 ./face 
      $chmod 644 ./face/*.png
      $chmod 755 ./image 
      $chmod 644 ./image/*.png
      $chmod 644 ./image/*.gif
      $chmod 755 ./plugin 
      $chmod 644 ./plugin/*.php
      $chmod 755 ./skin 
      $chmod 644 ./skin/*.php
      $chmod 644 ./skin/*.css
  • 記述を省略しましたが、全ての.htaccess ファイルとindex.html は「見るだけのフォルダとファイル」です。
  • 記述を省略しましたが、1.4 系のtrackback ディレクトリは「読み書きするフォルダとファイル」です。
  • 記述を省略しましたが、ローカルで編集してからアップする、アップグレードする、他サーバーへ移行するなどの理由で、attach, backup などのデータを引き継ぐ場合、PukiWiki/Install/アップグレード時の注意 の「ファイルの属性(パーミッション)」の項などを参考にして、設定してください。

*1 Linux でたまにわけのわからないエラーに髪の毛をかきむしることがあります。pukiwiki 絡みではないですが、2バイト文字ではないからと Windows 標準のメモ帳で編集したファイルを FTP で Linux サーバー へあげてはまった経験がありまして、さんざん調べたあげく動かない原因がただ単に改行コード(CR+LFになってた)だったことに気付いた時はかなりヘコみます...蛇足

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2013-07-08 (月) 19:18:53
Site admin: PukiWiki Development Team

PukiWiki 1.5.2+ © 2001-2019 PukiWiki Development Team. Powered by PHP 5.6.40-0+deb8u7. HTML convert time: 0.243 sec.

OSDN