「InvoicePlane」の版間の差分

提供: ArchWiki
ナビゲーションに移動 検索に移動
(→‎nginx: 差し替え)
84行目: 84行目:
 
バージョン 7.4 以降、php-fpm はデフォルトでセキュリティが強化され、 {{ic|/usr}} (とサブディレクトリ)の読み書きを禁止しています。そのため、 {{ic|/usr/share/webapps/invoiceplane}} ディレクトリにも明示的にパーミッションを与える必要があります。
 
バージョン 7.4 以降、php-fpm はデフォルトでセキュリティが強化され、 {{ic|/usr}} (とサブディレクトリ)の読み書きを禁止しています。そのため、 {{ic|/usr/share/webapps/invoiceplane}} ディレクトリにも明示的にパーミッションを与える必要があります。
   
{{ic|php-fpm}} {{ic|override.conf}} を作成します。
+
{{ic|php-fpm.service}} の [[ドロップインファイル]]を作成します。
  +
次のコンテンツを追加して保存します。
 
# systemctl edit php-fpm.service
 
 
以下の内容を追加して保存します。
 
   
 
{{hc|/etc/systemd/system/php-fpm.service.d/override.conf|2=
 
{{hc|/etc/systemd/system/php-fpm.service.d/override.conf|2=

2022年3月28日 (月) 09:45時点における版

InvoicePlane は見積書・請求書・顧客・入金を管理するセルフホスト型のオープンソースアプリケーションです。

インストール

invoiceplaneAUR パッケージをインストールしてください。

設定

データベース

以下は MariaDB を使って Invoiceplane のデータベースをセットアップする例です。データベースの名前は invoiceplane、ユーザー名は invoiceplane、パスワードは password としています:

CREATE DATABASE invoiceplane;
GRANT ALL PRIVILEGES ON invoiceplane.* TO invoiceplane@'localhost' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;

ウェブサーバー

Apache

Apache の設定ファイルを作成:

/etc/httpd/conf/extra/invoiceplane.conf
Alias /invoiceplane "/usr/share/webapps/invoiceplane"
<Directory "/usr/share/webapps/invoiceplane">
    DirectoryIndex index.php
    AllowOverride All
    Options FollowSymlinks
    Require all granted
</Directory>

そして /etc/httpd/conf/httpd.conf にファイルを記述:

# InvoicePlane configuration
Include conf/extra/invoiceplane.conf

Lighttpd

Lighttpd の設定に invoiceplane のエイリアスを作成:

alias.url = ( "/invoiceplane" => "/usr/share/webapps/invoiceplane/")

それから設定で mod_alias, mod_fastcgi, mod_cgi を有効にしてください (server.modules セクション)。

nginx

以下は、php-fpm を使用したサブドメインの設定(nginx.conf がインクルード)の例です

/etc/nginx/sites-available/invoiceplane.conf
server {

listen 443 ssl http2;
listen [::]:443 ssl http2;

        add_header X-Frame-Options "SAMEORIGIN";

        root /usr/share/webapps/invoiceplane;
        index index.php;
                                                                                                       
        server_name invoice.''domain.tld'';

        client_body_timeout 60;

    location / {
        try_files $uri $uri/ /index.php?q=$uri&$args;       
    }

    location ~ \.php$ {
        fastcgi_param PHP_ADMIN_VALUE open_basedir=/tmp:/usr/share/webapps/invoiceplane:/dev/urandom:/usr/share/php;
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
        include fastcgi_params;
        fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
        fastcgi_param DOCUMENT_ROOT $realpath_root;
        fastcgi_param PATH_INFO $fastcgi_path_info;
        fastcgi_pass unix:/run/php-fpm/php-fpm.sock;
        client_max_body_size 100M;
    }
}

InvoicePlane ディレクトリを php-fpm で明示的に許可する

バージョン 7.4 以降、php-fpm はデフォルトでセキュリティが強化され、 /usr (とサブディレクトリ)の読み書きを禁止しています。そのため、 /usr/share/webapps/invoiceplane ディレクトリにも明示的にパーミッションを与える必要があります。

php-fpm.serviceドロップインファイルを作成します。 次のコンテンツを追加して保存します。

/etc/systemd/system/php-fpm.service.d/override.conf
[Service]
ReadWritePaths = /usr/share/webapps/invoiceplane/ipconfig.php
ReadWritePaths = /usr/share/webapps/invoiceplane/uploads/
ReadWritePaths = /usr/share/webapps/invoiceplane/application/logs
ReadWritePaths = /usr/share/webapps/invoiceplane/vendor/mpdf/mpdf/tmp

その後、php-fpm サービスを再起動し、http ユーザーに書き込み権限を割り当てます。

インストールウィザード

データベースとウェブサーバーを設定したら、http://your-invoiceplane-domain.com/index.php/setup からインストールウィザードのページを開いて指示に従ってください。

ローカリゼーション

英語以外の言語を使いたい場合は Translation / Localization を参照してください。

参照

翻訳ステータス: このページは en:InvoicePlane の翻訳バージョンです。最後の翻訳日は 2021-09-10 です。もし英語版に 変更 があれば、翻訳の同期を手伝うことができます。