osTicket是Linux平台上用PHP编写的开源票务系统。它支持不同类型的数据库,如MySQL,PostgreSQL,并且可以与LDAP / Active Directory集成以进行中央身份验证。
它是一个简单,轻量级的基于Web的应用程序。OsTicket允许您管理,组织和存档支持请求。它无缝地将通过电子邮件,Web表单和电话创建的查询路由到一个简单,易于使用的多用户,基于Web的客户支持平台中。
在本教程中,我将向您展示如何使用Nginx作为Web服务器,MySQL / MariaDB作为数据库服务器和PHP在Ubuntu 18.04上安装osTicket。
先决条件
- Ubuntu 18.04
- 具有root特权的sudo用户。
步骤1:入门
首先,使用sudo特权登录到服务器,并使用以下命令将系统更新为最新的稳定版本:
sudo apt update && sudo apt upgrade -y
步骤2:安装LEMP服务器
OsTicket要求在您的服务器上安装Web服务器,PHP和数据库服务器。
安装Nginx Web服务器
您可以通过以下命令安装Nginx Web服务器:
sudo apt install nginx -y
现在,我们检查Nginx服务,并要手动启动该服务,请运行以下命令:
sudo systemctl status nginx
sudo systemctl start nginx
现在,通过运行以下命令启用nginx服务在启动时启动:
sudo systemctl enable nginx
安装PHP和PHP-FPM
接下来,您需要安装PHP,PHP-FPM和OsTicket正常运行所需的一些其他PHP模块:
sudo apt install php php-mysql php-cgi php-fpm php-cli php-curl php-gd php-imap php-mbstring php-xml-util php-intl php-apcu php-common php-gettext php-bcmath
上面的命令将安装php-7.2
现在,通过在终端中运行以下命令来编辑php.ini文件。
sudo vim /etc/php/7.2/fpm/php.ini
取消注释cgi.fix_pathinfo变量并将其值更改为0
cgi.fix_pathinfo=0
现在保存并关闭文件。
接下来,重新启动php7.2-fpm服务,并在启动时使用以下命令启用它:
sudo systemctl restart php7.2-fpm
sudo systemctl enable php7.2-fpm
为OsTicket安装和配置MySQL数据库服务器
在终端窗口中,发出以下命令来安装MySQL数据库服务器。
sudo apt install mysql-server
现在启动MySQL服务并启用它以在启动时启动,然后使用以下命令检查MySQL服务状态:
sudo systemctl start mysql
sudo systemctl enable mysql
sudo systemctl status mysql
接下来,使用以下命令保护MySQL的安装:
sudo mysql_secure_installation
回答以下所有问题:
Set root password? [Y/n] Y
New password:
Re-enter new 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
接下来,登录到MySQL控制台,如下所示:
须藤mysql -u root -p
在此处输入您的Root密码。
现在您需要为osTicket创建数据库
run following command
mysql> create database osticket_db;
mysql> grant all privileges on osticket_db.* to osticket_user identified by 'OsTicketPassw0rd@19';
mysql> flush privileges;
osTicket的数据库已创建。
步骤3:下载并配置osTicket
为osTicket创建一个新目录,然后转到该目录。
sudo mkdir -p /var/www/osticket/
cd /var/www/osticket/
接下来使用wget下载最新的osTicket设置,并使用以下命令将其提取:-
sudo apt-get install wget unzip
sudo wget https://github.com/osTicket/osTicket/releases/download/v1.14.1/osTicket-v1.14.1.zip
sudo unzip osTicket-v1.14.1.zip
解压缩后,您将获得脚本并上传目录。
接下来,使用以下命令从ost-sampleconfig.php文件创建osTicket配置文件:
sudo su -
cd upload/
cp ost-sampleconfig.php ost-config.php
接下来,您需要将osTicket Web目录的所有权更改为“ www-data”用户和组。
sudo chown -R www-data:www-data /var/www/osticket/
第4步-创建OsTicket虚拟主机
现在,通过运行以下命令为OsTicket创建新的虚拟主机配置:
sudo vim /etc/nginx/sites-available/osticket.conf
粘贴如下配置:
server {
listen 80;
server_name 13.52.217.10; ## change server_name as per your domain name.
root /var/www/osticket/upload;
access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log;
index index.php index.html index.htm;
# Enable gzip
gzip on;
gzip_min_length 1000;
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.2-fpm.sock;
}
}
在这里,您需要根据您的域名更改server_name 13.52.217.10。
保存Nginx配置文件并退出。
现在激活虚拟主机并测试配置。
ln -s /etc/nginx/sites-available/osticket.conf /etc/nginx/sites-enabled/
nginx -t
这将显示如下输出
现在重启nginx服务
sudo systemctl restart nginx
步骤5:安装和配置osTicket
现在,让我们输入域名以在任何网络浏览器中获取osTicket UI,您将看到如下页面:
下一步单击“ 继续 ”,您将被重定向到osTicket配置部分。
填写所有必需的信息,然后单击“ 立即安装” 按钮。
在数据库设置中,输入详细信息,如dbname,用户名和密码,这些名称是在mysql安装过程中创建的。
最后单击立即安装按钮,安装完成后将显示如下屏幕截图:
接下来,通过运行以下命令来更改ost-config.php的权限以删除写访问权限:
cd /var/www/osticket/upload/
chmod 0644 include/ost-config.php
对于osTicket管理员,请在网络浏览器中输入您的IP /域名:
对于管理员登录/代理面板/管理面板配置类型,如下所示。
- osTicket管理员登录名-http://您的域名/ scp /
- osTicket代理面板-http://yourdomainname/scp/index.php
- osTicket管理控制台配置-http://yourdomainname/scp/settings.php
最后,您已经在Ubuntu 18.04服务器上成功安装了osTicket。
原文:https://www.howtoforge.com/how-to-install-osticket-on-ubuntu-1804/