如何在FreeBSD 12上使用Nginx安装InvoicePlane

如何在FreeBSD 12上使用Nginx安装InvoicePlane

InvoicePlane是一个免费的开源发票应用程序。本教程将向您展示如何在FreeBSD 12系统上安装InvoicePlane。

要求

  • WebServer(Apache,NGINX)。本教程将使用Nginx。
  • MySQL 5.5或更高版本或MariaDB的等效版本。
  • PHP 7.0、7.1或7.2版本已安装并激活了以下PHP扩展:
  • php-gd
  • PHP哈希
  • php-json
  • php-mbstring
  • php-mcrypt
  • php-mysqli
  • php-openssl
  • PHP重新编码
  • php-xmlrpc
  • php-zlib

先决条件

  • 运行FreeBSD 12。
  • 具有sudo特权的非root用户。

初步步骤

检查您的FreeBSD版本:

uname -ro
# FreeBSD 12.1-RELEASE

设置时区:

tzsetup

更新您的操作系统软件包(软件)。这是重要的第一步,因为它可以确保您具有操作系统默认软件包的最新更新和安全修复程序:

freebsd-update fetch install
pkg update && pkg upgrade -y

安装一些基本软件包,这些软件包是FreeBSD 12.0操作系统的基本管理所必需的:

pkg install -y sudo vim unzip wget bash

第1步-安装PHP和所需的PHP扩展

InvoicePlane Web应用程序需要PHP 7.0或更高版本。

安装PHP以及必要的PHP扩展:

sudo pkg install -y php72 php72-ctype php72-curl php72-dom php72-hash php72-iconv php72-gd php72-json php72-mbstring php72-openssl php72-session php72-simplexml php72-xml php72-zip php72-zlib php72-pdo php72-pdo_mysql php72-mysqli php72-filter php72-ftp php72-tokenizer php72-calendar php72-pecl-APCu php72-opcache

检查PHP版本:

php --version

# PHP 7.2.7 (cli) (built: Jul 25 2019 01:28:53) ( NTS )
# Copyright (c) 1997-2018 The PHP Group
# Zend Engine v3.3.7, Copyright (c) 1998-2018 Zend Technologies
# with Zend OPcache v7.3.7, Copyright (c) 1999-2018, by Zend Technologies

启用并启动PHP-FPM服务:

sudo sysrc php_fpm_enable=yes
sudo service php-fpm start

第2步-安装MySQL

安装MySQL数据库服务器

sudo pkg install -y mysql57-server

检查MySQL版本:

mysql --version
# mysql  Ver 14.14 Distrib 5.7.26, for FreeBSD12.0 (amd64) using  EditLine wrapper

启用并启动MySQL服务:

sudo sysrc mysql_enable="yes"
sudo service mysql-server start

mysql_secure installation 脚本以提高MySQL安全性并设置MySQL密码 root 用户:

sudo mysql_secure_installation

回答每个问题:

Would you like to setup VALIDATE PASSWORD plugin? N
New password: your_secure_password
Re-enter new password: your_secure_password
Remove anonymous users? [Y/n] Y
Disallow root login remotely? [Y/n] Y
Remove test database and access to it? [Y/n] Y
Reload privilege tables now? [Y/n] Y

以root用户身份连接到MySQL Shell:

sudo mysql -u root -p
# Enter password

为Matomo创建一个空的MySQL数据库和用户,并记住凭据:

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

从MySQL退出:

exit

更换 dbnameusernamepassword 用你自己的名字。

步骤3-安装acme.shbclient并获取“让我们加密货币”证书(可选)

不需要使用HTTPS保护您的网站,但这是保护您网站访问量的一个好习惯。为了从Let’s Encrypt获得TLS证书,我们将使用Acme.sh客户端。 Acme.sh是一个纯UNIX Shell软件,用于以零依赖关系从Let’s Encrypt获得TLS证书。

下载并安装Acme.sh:

sudo pkg install -y acme.sh

检查Acme.sh版本:

acme.sh --version
# v2.8.2

为您的域名/主机名获取RSA和ECC / ECDSA证书:

# RSA
sudo acme.sh --issue --standalone --home /etc/letsencrypt -d example.com --keylength 2048
# ECDSA
sudo acme.sh --issue --standalone --home /etc/letsencrypt -d example.com --keylength ec-256

运行上述命令后,您的证书和密钥将位于:

  • 对于RSA: /etc/letsencrypt/example.com 目录。
  • 对于ECC / ECDSA: /etc/letsencrypt/example.com_ecc 目录。

第3步-安装NGINX

安装NGINX Web服务器:

sudo pkg install -y nginx

检查NGINX版本:

nginx -v
# nginx version: nginx/1.14.2

启动并启用NGINX服务:

sudo sysrc nginx_enable=yes
sudo service nginx start

通过运行以下命令为InvoicePlane配置Nginx:

sudo vim /usr/local/etc/nginx/invoiceplane.conf

并使用以下配置填充文件:

server {
    listen 80;
    listen [::]:80;

    server_name example.com;

    root /usr/local/www/invoiceplane;

    index index.php index.html;

    location / {
        try_files $uri $uri/ /index.php?$query_string;
    }

    location ~* .php${
fastcgi_pass 127.0.0.1:9000;
include fastcgi_params;
fastcgi_index index.php5;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
} }

测试NGINX配置:

sudo nginx -t

重新加载NGINX:

sudo systemctl reload nginx.service

步骤4-安装InvoicePlane

下载InvoicePlane的最新稳定版本并解压缩存档:

sudo mkdir -p /usr/local/www
cd /usr/local/www
sudo curl -O -J -L https://invoiceplane.com/download/v1.5.9
sudo unzip v1.5.9.zip
sudo rm v1.5.9.zip
sudo mv ip invoiceplane

导航 /var/www/invoiceplane 目录:

cd /usr/local/www/invoiceplane

制作一份 ipconfig.php.example 文件并将副本重命名为 ipconfig.php:

sudo cp ipconfig.php.example ipconfig.php

打开 ipconfig.php 文件并在其中添加您的URL:

sudo vim ipconfig.php
# Something like this
IP_URL=http://example.com

更改所有权 /usr/local/www/invoiceplane 目录到 www:

sudo chown -R www:www /usr/local/www/invoiceplane

sudo vim /etc/php.ini 并设置 date.timezone:

date.timezone = Region/City

重新启动PHP-FPM服务:

sudo service php-fpm restart

从Web浏览器运行InvoicePlane安装程序,然后按照说明进行操作:

http://example.com/index.php/setup

安装完成后,您可以使用在安装过程中选择的电子邮件地址和密码登录InvoicePlane。

如果要确保安装安全,可以禁用安装程序。为此,请更换 DISABLE_SETUP=falseDISABLE_SETUP=true 在你的 ipconfig.php 文件。

第5步-完成InvoicePlane设置

现在已安装并配置了InvoicePlane,是时候访问其Web安装向导了。

打开您的Web浏览器,然后输入URL http://example.com。您将被重定向到以下页面:

InvoicePlane Web安装程序

现在,单击设置按钮。您应该看到以下页面:

选择语言

接下来,选择语言,然后单击继续按钮。您应该看到以下页面:

检查系统要求

接下来,单击继续按钮。您应该看到以下页面:

数据库详细信息

在这里,提供您的数据库详细信息,然后单击“重试”按钮。您应该看到以下页面:

数据库连接成功

现在,单击继续按钮。您应该看到以下页面:

创建用户帐号

现在,单击继续按钮。您应该看到以下页面:

InvoicePlane安装完成

现在,提供所有必需的详细信息,然后单击继续按钮。安装完成后,您将看到以下页面:

登录到InvoicePlane

现在,单击“登录”按钮以访问InvoicePlane管理。

链接

  • https://invoiceplane.com/
  • https://github.com/InvoicePlane/InvoicePlane

资讯来源:由0x资讯编译自HOWTOFORGE,版权归作者所有,未经许可,不得转载
你可能还喜欢