如何在 Debian 上安裝 UVdesk Helpdesk

UVDesk 是一個用 PHP 編寫並使用 MySQL 數據庫的開源幫助台系統。 UVDesk 有一個簡單的用戶界面,使代理人可以輕鬆地搜索工單隊列並按關鍵字、分配的代理人、創建日期、優先級和其他因素對其進行過濾。

代理可以使用一個系統跟踪工單,該系統包括活動提要、工單過濾器、已關閉工單上的“星標”和類別。

UV Desk 具有許多處理客戶支持的功能,包括新帳戶的用戶驗證、幫助台軟件所有用戶的電子郵件驗證、客戶通過聯繫表單創建工單時的警報、聯繫表單提交頁面中的垃圾郵件檢測、工單內容驗證以確保它不會太長或太短。

UVdesk 旨在幫助公司提供快速的電子郵件、電話和聊天支持; 維護常見問題的知識庫; 自助出票; 根據用戶行為提供有針對性的促銷活動; 並創建有關座席生產力的詳細報告。

該服務還提供了提供第三方集成的選項,包括 FedEx Ship Manager 通過電子郵件或 SMS 文本消息與跟踪更新集成。 UVdesk 可以在組織的私人服務器上使用或由 UVdesk 託管。 它具有多渠道客戶服務支持(電話、電子郵件、Web 聊天)。 它提供的報告工具​​可以顯示哪些客戶來電最多、他們在與某人通話之前排在隊列中的時間以及座席響應客戶的速度。

本指南將引導您完成 UV Desk 在 Debian 10 VPS 上的安裝過程。 本指南還向您展示瞭如何安裝 Apache 作為 web 服務器和 php-fpm 作為 PHP 處理器。

先決條件

要學習本教程,您需要具備以下條件:

  • Debian 10 VPS
  • 對您的服務器的根訪問
  • SSH 客戶端,例如 PuTTy
  • 系統要求:至少 4GB 內存,20GB 磁盤空間。

連接到您的 Debian 10 VPS

首先,您必須使用 SSH 客戶端連接到您的 Debian 10 VPS。 登錄後,您應該使用以下命令更新系統。

sudo apt update && sudo apt upgrade -y

系統更新後,運行以下命令以安裝所需的依賴項。

sudo apt install git unzip curl nano -y

安裝 Apache 網絡服務器

Apache 是一種廣泛使用的 Web 服務器,默認情況下隨 Debian 10 一起提供。安裝 Apache,運行以下命令。 libapache2-mod-fcgid 是 PHP-FPM 的必需依賴項。

sudo apt 安裝 apache2 libapache2-mod-fcgid -y

接下來,運行以下命令以啟用 Apache 模塊。

sudo a2enmod actions
sudo a2enmod fcgid
sudo a2enmod alias
sudo a2enmod proxy_fcgi

這 Apache 模塊解釋:

  • a2enmod 管理 apache 模塊。 Apache2 需要 fcgid 模塊才能與可以處理動態頁面的 PHP-FPM 通信。
  • 別名允許用戶將多個網站統一到一個 URL 中。
  • proxy_fcgi 啟用 apache 的 mod_proxy 模塊和 fastcgi 協議,它們一起通信並使您能夠運行後端 FastCGI 進程。

最後重啟 Apache 以使更改生效。

sudo systemctl restart apache2

為 UVdesk 創建數據庫

本指南將使用 MariaDB 作為我們的數據庫,可以通過 apt 安裝。 MariaDB 是一個跨平台的 SQL 數據庫管理系統,創建為 MySQL 的一個分支。

sudo apt install mariadb-server mariadb-client -y

MariaDB-server 是運行 MariaDB 的實際守護進程,而 mariadb-client 是可用於連接到 MariaDB 服務器的命令行客戶端。

安裝 MariaDB 後,請運行以下命令來保護它。

mysql_secure_installation

系統將要求您提供 MariaDB 的根密碼。 按 Enter .

系統將要求您輸入 root 的當前密碼(不輸入則不輸入)。 按 Enter.

接下來,系統將提示您設置新的 root 密碼。 Enter 一個強密碼,然後按 Enter.

系統將要求您確認新的 root 密碼。 重新輸入密碼並按 Enter.

輸入 Y 並按下 Enter 對於其餘的問題。

示例輸出:

安裝 PHP-FPM

PHP-FPM(FastCGI 進程管理器)是一個 PHP 模塊,允許您使用 FastCGI 協議運行 PHP 應用程序。 PHP-FPM 使得在運行 PHP 腳本時控制進程和線程的數量變得容易。

sudo apt install -y php php-pear
sudo apt install -y php-{cli,fpm,pdo,json,common,mysql,zip,gd,mbstring,curl}
sudo apt install -y php-{xml,bcmath,imap,intl,mailparse}

安裝 PHP-FPM 後,請運行以下命令檢查其狀態。

sudo systemctl status php*-fpm.service

您應該會看到與此類似的內容。 這裡需要注意的重要一點是該進程處於活動狀態並且正在運行。

現在,我們需要編輯 php.ini 文件來配置 PHP-FPM。 首先,使用以下命令打開 php.ini 文件。

sudo nano /etc/php/*/fpm/php.ini

你會在這個文件中看到很多設置。 向下滾動到時區設置,您可以在下面找到 [Date] .

我們需要在此處使用您選擇的時區設置 date.timezone 指令。 您只需複制下面的代碼並將其粘貼到該文件的第 13 行即可(如下所示)。

date.timezone = USA/Eastern

接下來,您需要設置 memory_limit 指令。 該指令設置腳本可以消耗的最大內存量。 我們建議將此值設置為 512M(如果您的服務器有足夠的內存,甚至可以設置為 1024MB)。

memory_limit = 512M

示例輸出:

前:

後:

完成後,保存並 close 文件。 現在我們需要重啟 PHP-FPM 來加載我們的新設置。

sudo systemctl restart php*-fpm.service

安裝 PHP 作曲器

PHP Composer 是 PHP 的依賴項管理器,允許您安裝和管理項目的依賴項。

UVdesk 需要 PHP Composer 才能工作。 您可以了解什麼是 PHP Composer 及其工作原理 這裡.

首先,運行以下命令下載 Composer 安裝程序。

curl -sS https://getcomposer.org/installer -o composer-setup.php

curl -sS(這會使用“下載安裝程序curl”) https://getcomposer.org/installer(這會從 getcomposer.org 下載最新的安裝程序)-o(輸出被重定向到一個名為 composer-setup.php 的文件)composer-setup.php(Composer 安裝程序被命名為作曲家-setup.php)

下載安裝程序後,運行以下命令來安裝 Composer。

sudo php composer-setup.php --install-dir=/usr/local/bin --filename=composer

sudo php(以 root 身份運行 php)composer-setup.php(指定輸入文件是安裝程序,composer-setup.php)–install-dir=/usr/local/bin(安裝位置可以是任何地方;我們’ ve chosen /usr/local/bin) –filename=composer(此命令的輸出是 composer,即 Composer 可執行文件)

現在安裝了 Composer,運行 composer -V 命令以確保它正常工作。

composer -V

你應該看到類似這樣的輸出。 如果您沒有看到版本號,那麼 Composer 可能沒有正確安裝,需要從安裝程序重新安裝。

安裝 UVdesk 軟件

現在我們的應用程序服務器已經配置好了,我們可以在上面安裝 UVdesk。 首先,您應該始終為您的項目創建一個目錄。 該目錄將存儲項目的所有文件,包括 UVdesk 安裝文件。

sudo mkdir /var/www/udvesk
cd /var/www/udvesk

接下來,運行以下命令來設置項目目錄的權限。 這將確保您在此目錄中具有寫權限。

sudo chown $USER:$USER /var/www/udvesk -R
sudo chown

用戶:

USER:USER 設置項目目錄的所有權為你的用戶名 /var/www/udvesk -R 遞歸設置項目目錄及其所有子目錄的權限

接下來,運行以下命令以獲取可用包的最新列表。

composer clear-cache

現在我們有了所有可用 Composer 軟件包的完整列表,運行命令來安裝 UVdesk。

composer create-project uvdesk/community-skeleton helpdesk-project

composer create-project uvdesk/community-skeleton helpdesk-project 安裝最新版本的 UVdesk 社區框架。 安裝完成後,您將獲得如下所示的項目設置完成。

創建虛擬主機

要在您的域上使用 UVdesk,您需要創建一個虛擬主機。 虛擬主機允許您在單個服務器上運行多個網站(或應用程序)。 有關詳細信息,請參閱此 文檔.

首先,運行以下命令來保護服務器的默認虛擬主機文件。 如果我們需要恢復它,我們將創建一個 bak 文件。 Bak 是備份文件的默認擴展名。

sudo mv 000-default.conf 000-default.conf.bak

現在,運行以下命令創建一個新的虛擬主機文件,該文件使用服務器的默認端口 80 並偵聽服務器上的所有地址。 在所有代碼中將 my_domain 替換為您的域名

sudo mv 000-default.conf 000-default.conf.bak

接下來,使用您喜歡的文本編輯器創建新的虛擬主機文件。 我們將為此使用 nano 編輯器 example.

sudo nano /etc/apache2/sites-enabled/uvdesk.conf

將以下代碼複製並粘貼到文件中。 請務必將 my-domain 替換為您的域名。

Listen 8080
<VirtualHost *:8080>
ServerName my-domain.com
ServerAlias www.my-domain.com
DocumentRoot /var/www/udvesk/helpdesk-project/public
<Directory /var/www/udvesk/helpdesk-project/public>
Options -Indexes +FollowSymLinks +MultiViews
AllowOverride All
Require all granted
</Directory>

<FilesMatch .php$>
# 2.4.10+ can proxy to unix socket
SetHandler "proxy:unix:/var/run/php/php7.4-fpm.sock|fcgi://localhost"
</FilesMatch>

ErrorLog /var/log/apache2/uvdesk-error.log
CustomLog /var/log/apache2/uvdesk-access.log combined

</VirtualHost>

關於上面的代碼塊,你應該知道什麼:

聽8080:這一行告訴 Apache 在端口 8080 上監聽請求。 如果您需要使用不同的端口,請更改此行以反映新的端口號。

ServerName my-domain.com:這一行告訴 Apache 響應請求時使用哪個域名。

ServerAlias www.my-domain.com:這一行告訴 Apache 還響應對 www.my-domain.com 域名的請求。

DocumentRoot /var/www/udvesk/helpdesk-project/public:這一行告訴 Apache 在哪裡可以找到我們之前創建的 helpdesk-project 目錄。

Save 然後按 CTRL+X、Y 和 ENTER 退出 nano。

現在您已經創建了虛擬主機文件,請運行以下命令來設置正確的權限。

sudo chown -R www-data:www-data /var/www/udvesk

接下來,運行 sudo 下面的 chmod -R 755 /var/www/udvesk 命令設置正確的權限。 這將確保 Apache 進程可以讀取和寫入 helpdesk-project 目錄。

sudo chmod -R 755 /var/www/udvesk

最後,通過運行下面的命令,重新加載 Apache 以使更改生效。

sudo systemctl reload apache2

訪問 UVdesk Web UI

現在我們已經設置了虛擬主機,我們可以通過在瀏覽器中訪問 https://my-domain.com:8080 來訪問 Web UI。 第一次訪問 UVdesk 時,系統會要求您配置服務器和數據庫連接。

點擊 開始吧 並按照屏幕上的說明完成設置。

結論

恭喜,您已在 Debian 服務器上成功設置 UVdesk。 您現在可以通過 Web 瀏覽器管理幫助台了。

更多關於使用UVdesk的信息,請參考其官方文檔 .