「InvoicePlane」の版間の差分
Kusanaginoturugi (トーク | 投稿記録) (→設定: php-mcryptのインストールの記述を追加) |
Kusanaginoturugi (トーク | 投稿記録) (update TranslationStatus.) |
||
(3人の利用者による、間の31版が非表示) | |||
1行目: | 1行目: | ||
[[Category:オフィス]] |
[[Category:オフィス]] |
||
+ | [[Category:ウェブアプリケーション]] |
||
− | [[en:Invoiceplane]] |
||
+ | [[en:InvoicePlane]] |
||
− | [http://invoiceplane.com InvoicePlane] は見積書・請求書・顧客・入金を管理するセルフホスト型のオープンソースアプリケーションです。 |
||
+ | [https://invoiceplane.com InvoicePlane] は見積書・請求書・顧客・入金を管理するセルフホスト型のオープンソースアプリケーションです。 |
||
== インストール == |
== インストール == |
||
− | {{AUR|invoiceplane}} パッケージをインストールしてください。 |
+ | {{AUR|invoiceplane}} パッケージを[[インストール]]してください。 |
== 設定 == |
== 設定 == |
||
43行目: | 44行目: | ||
それから設定で mod_alias, mod_fastcgi, mod_cgi を有効にしてください (server.modules セクション)。 |
それから設定で mod_alias, mod_fastcgi, mod_cgi を有効にしてください (server.modules セクション)。 |
||
− | ==== |
+ | ==== nginx ==== |
+ | 以下は、php-fpm を使用したサブドメインの設定({{ic|nginx.conf}} がインクルード)の例です |
||
− | [[nginx]] で invoiceplane を使用するには、まず使用したいサーバーのルートディレクトリを確認してください。ルートディレクトリが {{ic|/srv/http}} の場合、以下のようにシンボリックリンクを作成: |
||
− | + | {{hc|/etc/nginx/sites-available/invoiceplane.conf|<nowiki> |
|
+ | server { |
||
+ | listen 443 ssl http2; |
||
− | === phpの設定 === |
||
+ | listen [::]:443 ssl http2; |
||
− | 公式リポジトリno{{Pkg|php-mcrypt}}を[[インストール]]してください。 |
||
+ | |||
− | そして、{{ic|/etc/php/php.ini}} の mcrypt.so を有効にします。 |
||
+ | add_header X-Frame-Options "SAMEORIGIN"; |
||
− | extension=mcrypt.so |
||
+ | |||
+ | 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; |
||
+ | } |
||
+ | } |
||
+ | </nowiki>}} |
||
+ | |||
+ | === InvoicePlane ディレクトリを php-fpm で明示的に許可する === |
||
+ | |||
+ | バージョン 7.4 以降、php-fpm はデフォルトでセキュリティが強化され、 {{ic|/usr}} (とサブディレクトリ)の読み書きを禁止しています。そのため、 {{ic|/usr/share/webapps/invoiceplane}} ディレクトリにも明示的にパーミッションを与える必要があります。 |
||
+ | |||
+ | {{ic|php-fpm.service}} の [[ドロップインファイル]]を作成します。 |
||
+ | 次のコンテンツを追加して保存します。 |
||
+ | |||
+ | {{hc|/etc/systemd/system/php-fpm.service.d/override.conf|2= |
||
+ | [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 |
||
+ | |||
+ | }} |
||
+ | |||
+ | その後、{{ic|php-fpm}} サービスを[[再起動]]し、{{ic|http}} ユーザーに書き込み権限を割り当てます。 |
||
=== インストールウィザード === |
=== インストールウィザード === |
||
− | データベースとウェブサーバーを設定したら、http:// |
+ | データベースとウェブサーバーを設定したら、{{ic|http://''your-invoiceplane-domain.com''/index.php/setup}} からインストールウィザードのページを開いて指示に従ってください。 |
== ローカリゼーション == |
== ローカリゼーション == |
||
66行目: | 110行目: | ||
* [http://invoiceplane.com 公式ウェブページ] |
* [http://invoiceplane.com 公式ウェブページ] |
||
* [https://github.com/InvoicePlane/InvoicePlane/wiki ドキュメント] |
* [https://github.com/InvoicePlane/InvoicePlane/wiki ドキュメント] |
||
+ | |||
+ | {{TranslationStatus|InvoicePlane|2022-03-28|718797}} |
2022年3月28日 (月) 09:52時点における最新版
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 を参照してください。