如何在 Ubuntu 16.04 上使用 Nginx 安装 osTicket
在此页
- 第 1 步 - 安装 Nginx 和 MySQL
- 第 2 步 - 安装和配置 PHP-FPM7
- 第 3 步 - 为 OsTicket 创建数据库
- 第 4 步 - 创建 OsTicket 虚拟主机
- 第 5 步 - 下载并配置 osTicket
- 第 6 步 - 安装 OsTicket
- 第 7 步 - 测试
- 链接
OsTicket 是一个基于 PHP 的开源支持票系统。它是一个简单轻便的支持票系统,旨在易于使用和安装。 OsTicket 允许您管理、组织和存档您的支持请求。它支持 LDAP 和 Active Directory 身份验证。
在本教程中,我将逐步向您展示如何在 Ubuntu 16.04 上安装和配置 OsTicket。 OsTicket 将在 PHP-FPM 7 下运行,使用 Nginx 作为 Web 服务器,使用 MySQL 5.7 版本作为数据库。
先决条件
- Ubuntu 16.04
- 根权限
第 1 步 - 安装 Nginx 和 MySQL
在此步骤中,我们将从 Ubuntu 存储库安装 Nginx 和 MySQL 服务器,然后使所有服务在引导时启动。
使用您的 ssh 帐户登录到服务器:
ssh
更新 Ubuntu 存储库:
sudo apt-get update
然后安装 Nginx 和 MySQL 服务器。
sudo apt-get install -y nginx mysql-server
系统将要求您提供 MySQL root 密码,输入安全的 MySQL 密码。

现在使用以下 systemctl 命令启动 Nginx 和 MySQL:
systemctl restart nginx
systemctl restart mysql
添加它以在启动时启动:
systemctl enable nginx
systemctl enable mysql
现在通过检查服务的服务器端口确保所有服务都在运行:
netstat -plntu
你会看到端口 80 被 Nginx 使用,端口 3306 被 MySQL 服务器使用。

第 2 步 - 安装和配置 PHP-FPM7
OsTicket 需要一些 PHP 扩展来安装,包括 php-gd、imap、xml 和 mbstring。在此步骤中,我们将安装 PHP 7 和所有这些扩展,然后配置 PHP 以与 Nginx Web 服务器一起运行。
使用下面的 apt 命令安装 PHP-FPM 7 和所有需要的扩展:
sudo apt-get install -y php7.0-cli php7.0-mysql php7.0-cgi php7.0-fpm php7.0-gd php7.0-imap php7.0-xml php7.0-mbstring php7.0-intl php-apcu
如果全部完成,进入php 7目录,编辑php.ini文件。
cd /etc/php/7.0/
vim fpm/php.ini
取消注释 cgi.fix_pathinfo 行并将其值更改为 0。
cgi.fix_pathinfo=0
保存文件并退出 vim。
现在重新启动 php7-fpm 并将其添加为在引导时启动:
systemctl restart php7.0-fpm
systemctl enable php7.0-fpm
接下来,我们将配置 PHP 7 FPM 以使用 Nginx Web 服务器。转到 Nginx 虚拟主机目录并使用 vim 编辑默认虚拟主机文件。
cd /etc/nginx/sites-available/
vim default
取消注释下面的 PHP 7 配置行:
location ~ \.php$ {
include snippets/fastcgi-php.conf;
#
# # With php7.0-cgi alone:
# fastcgi_pass 127.0.0.1:9000;
# # With php7.0-fpm:
fastcgi_pass unix:/run/php/php7.0-fpm.sock;
}
保存并退出,然后重新启动 Web 服务器。
systemctl restart nginx
现在通过创建一个 phpinfo 文件来测试 PHP 7 和 Nginx。
cd /var/www/html/
echo '<?php phpinfo(); ?>' > info.php
在浏览器中打开您的 Web 服务器 URL 并访问服务器 IP 地址。
您将获得有关您的 php 配置的信息。

第 3 步 - 为 OsTicket 创建数据库
在这一步中,我们将为 OsTicket 创建一个新的数据库和 MySQL 用户。使用您的 MySQL root 密码登录到 MySQL shell:
mysql -u root -p
TYPE YOUR PASSWORD
创建一个名为 osticket_db 的新数据库,以及一个密码为 [email 的新用户 osticket。
create database osticket_db;
create user ';
将新用户的所有权限授予数据库 osticket_db。
grant all privileges on osticket_db.* to ';
flush privileges;
OsTicket 数据库已创建。

第 4 步 - 创建 OsTicket 虚拟主机
现在我们必须为 OsTicket 创建新的虚拟主机配置。
转到 Nginx 虚拟主机目录并使用 vim 创建一个新文件 osticket:
cd /etc/nginx/sites-available/
vim osticket
粘贴下面的配置:
server {
listen 80;
server_name osticket.hakase-labs.com;
root /var/www/osticket/upload;
access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log;
index index.php;
client_max_body_size 2000M;
client_body_buffer_size 100M;
client_header_buffer_size 10M;
large_client_header_buffers 2 10M;
client_body_timeout 12;
client_header_timeout 12;
keepalive_timeout 15;
send_timeout 10;
gzip on;
gzip_comp_level 2;
gzip_min_length 1000;
gzip_proxied expired no-cache no-store private auth;
gzip_types text/plain application/x-javascript text/xml text/css application/xml;
set $path_info "";
location ~ /include {
deny all;
return 403;
}
if ($request_uri ~ "^/api(/[^\?]+)") {
set $path_info $1;
}
location ~ ^/api/(?:tickets|tasks).*$ {
try_files $uri $uri/ /api/http.php?$query_string;
}
if ($request_uri ~ "^/scp/.*\.php(/[^\?]+)") {
set $path_info $1;
}
location ~ ^/scp/ajax.php/.*$ {
try_files $uri $uri/ /scp/ajax.php?$query_string;
}
location / {
try_files $uri $uri/ index.php;
}
location ~ \.php$ {
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php7.0-fpm.sock;
fastcgi_param PATH_INFO $path_info;
}
}
我们将使用域名osticket.hakase-labs.com,并使用/var/www/osticket/upload目录作为网站根目录。将域名 osticket.hakase-labs.com 替换为您自己的域名。
保存 Nginx 配置文件并退出。
现在激活虚拟主机并测试配置。
ln -s /etc/nginx/sites-available/osticket /etc/nginx/sites-enabled/
nginx -t
确保没有报错,重启Nginx。
systemctl restart nginx

第 5 步 - 下载并配置 osTicket
为 osTicket 创建一个新目录并转到该目录。
mkdir -p /var/www/osticket/
cd /var/www/osticket/
使用 wget 命令下载 osTicket。
wget http://osticket.com/sites/default/files/download/osTicket-v1.10.zip
使用 unzip 提取 osTicket 归档文件。
unzip osTicket-v1.10.zip
所有 osTicket web 文件都在上传目录中可用,转到该目录并复制示例 osticket 配置文件。
cd upload/
cp include/ost-sampleconfig.php include/ost-config.php
现在将所有 osticket 文件和目录的所有者更改为 www-data 用户和组。
cd /var/www/osticket/
chown -R www-data:www-data upload/
第 6 步 - 安装 OsTicket
打开您的网络浏览器并访问您的 OsTicket 域名,我的是:
h77p://osticket.hakase-labs.com
确保所有必需的包都标记为绿色,如图所示。

如果出现错误,您可以看到如下示例中的红色标记:

单击继续,您将被重定向到 OsTicket 配置部分。
在系统设置中,输入您的帮助台名称和默认电子邮件地址。在管理员用户部分,输入您的管理员配置,包括管理员电子邮件,并确保该电子邮件与默认的帮助台电子邮件不同。

在数据库设置中,只需填写我们在第 3 步中创建的数据库的详细信息。

单击立即安装并等待安装。如果完成,您将在下面看到。

cd /var/www/osticket/upload/
删除或重命名设置目录并更改 osticket 配置文件的权限。
mv setup/ setup-sh/
chmod 0644 include/ost-config.php
OsTicket 安装完成。
第 7 步 - 测试
OsTicket 主页 - http://osticket.hakase-labs.com/

OsTicket 管理员登录 - http://osticket.hakase-labs.com/scp/

OsTicket 代理面板 - http://osticket.hakase-labs.com/scp/index.php

OsTicket 管理面板配置 - http://osticket.hakase-labs.com/scp/settings.php

链接
- http://osticket.com/wiki/Main_Page