OsTicket เป็นเครื่องมือออกตั๋วฟรีและโอเพ่นซอร์สที่เขียนด้วย PHP มันเป็นเครื่องมือที่ง่ายและมีน้ำหนักเบาที่ช่วยให้คุณจัดการจัดระเบียบและเก็บถาวรคำขอการสนับสนุนของคุณ
ในบทช่วยสอนนี้คุณจะได้เรียนรู้วิธีการติดตั้งและกำหนดค่า osTicket บน Ubuntu 16.04
ข้อกำหนดเบื้องต้น
- อินสแตนซ์ของเซิร์ฟเวอร์ Vultr Ubuntu 16.04
- ผู้ใช้ sudo ที่มีสิทธิ์ใช้งานรูท
ขั้นตอนที่ 1: การอัปเดตระบบ
ก่อนที่จะเริ่มแนะนำให้ทำการอัพเดตระบบด้วยเวอร์ชั่นเสถียรล่าสุด ล็อกอินด้วยผู้ใช้ sudo และรันคำสั่งต่อไปนี้เพื่ออัพเดตระบบ
sudo apt-get update -y
sudo apt-get upgrade -y
ขั้นตอนที่ 2: ติดตั้งเซิร์ฟเวอร์ LEMP
ก่อนอื่นคุณจะต้องติดตั้ง Nginx, Mysql, PHP, PHP-FPM และโมดูล PHP อื่น ๆ ที่จำเป็นในระบบของคุณ คุณสามารถติดตั้งทั้งหมดได้ด้วยคำสั่งต่อไปนี้:
sudo apt-get install -y nginx mysql-server 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 -y
เมื่อการติดตั้งเสร็จสมบูรณ์ให้เริ่มบริการ Nginx และ MySQL และเพิ่มเมื่อเริ่มต้นตอนบูต:
sudo systemctl start nginx
sudo systemctl start mysql
sudo systemctl enable nginx
sudo systemctl enable mysql
ถัดไปคุณจะต้องแก้ไขphp.ini
ไฟล์:
sudo nano /etc/php/7.0/fpm/php.ini
ยกเลิกหมายเหตุบรรทัดต่อไปนี้และเปลี่ยนค่าเป็น 0:
cgi.fix_pathinfo=0
บันทึกและปิดไฟล์จากนั้นรีสตาร์ทphp7-fpm
เซอร์วิสและเพิ่มเพื่อเริ่มในเวลาบูต:
sudo systemctl restart php7.0-fpm
sudo systemctl enable php7.0-fpm
โดยค่าเริ่มต้น MySQL ไม่ปลอดภัย คุณสามารถรักษาความปลอดภัยโดยเรียกใช้mysql_secure_installation
สคริปต์
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 shell ด้วยคำสั่งต่อไปนี้:
mysql -u root -p
ป้อนรหัสผ่านของคุณจากนั้นสร้างฐานข้อมูลและผู้ใช้ใหม่สำหรับ osTicket:
mysql> create database osticketdb;
mysql> create user osticket@localhost identified by 'password';
mysql> grant all privileges on osticketdb.* to osticket@localhost identified by 'password';
mysql> flush privileges;
mysql> exit;
ขั้นตอนที่ 4: ดาวน์โหลด osTicket
ก่อนอื่นคุณจะต้องสร้างไดเรกทอรีสำหรับ osTicket:
sudo mkdir /var/www/html/osticket
จากนั้นเปลี่ยนไดเรกทอรีเป็น osTicket และดาวน์โหลด osTicket ด้วยคำสั่งต่อไปนี้:
cd /var/www/html/osticket
wget http://osticket.com/sites/default/files/download/osTicket-v1.10.zip
หมายเหตุ: ให้แน่ใจว่าจะได้รับรุ่นล่าสุดจากหน้าดาวน์โหลด osTicket ของที่นี่
เมื่อการดาวน์โหลดเสร็จสิ้นให้แตกไฟล์ที่ดาวน์โหลดมา
sudo unzip osTicket-v1.10.zip
ถัดไปคัดลอกไฟล์กำหนดค่าตัวอย่าง:
sudo cp upload/include/ost-sampleconfig.php upload/include/ost-config.php
เปลี่ยนเจ้าของosticket
ไฟล์และไดเรกทอรีทั้งหมดเป็นผู้ใช้และกลุ่ม 'www-data'
sudo chown -R www-data:www-data /var/www/html/osticket
คุณจะต้องสร้างการกำหนดค่าโฮสต์เสมือนใหม่สำหรับ osTicket:
sudo nano /etc/nginx/sites-available/osticket
เพิ่มบรรทัดต่อไปนี้:
server {
listen 80;
server_name your-domain.com;
root /var/www/html/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;
}
}
บันทึกและปิดไฟล์จากนั้นเปิดใช้งานโฮสต์เสมือนด้วยคำสั่งต่อไปนี้:
sudo ln -s /etc/nginx/sites-available/osticket /etc/nginx/sites-enabled/
ในที่สุดเริ่มบริการ Nginx:
sudo systemctl restart nginx
ขั้นตอนที่ 6: เข้าถึงเว็บอินเตอร์เฟส osTicket
เมื่อกำหนดค่าทุกอย่างแล้วก็ถึงเวลาเข้าถึงตัวช่วยสร้างการติดตั้งเว็บ osTicket
เปิดเว็บเบราว์เซอร์ของคุณแล้วพิมพ์ URL http://your-domain.com
คุณจะเห็นวิซาร์ดการติดตั้ง osTicket ทำตามคำแนะนำแต่ละอย่างระมัดระวังและทำการติดตั้งให้เสร็จ
เมื่อการติดตั้งเสร็จสิ้นให้ลบไดเรกทอรีการตั้งค่าและเปลี่ยนสิทธิ์ของไฟล์กำหนดค่า osTicket:
sudo rm -rf /var/www/html/osticket/upload/setup
sudo chmod 0644 /var/www/html/osticket/include/ost-config.php
ขอแสดงความยินดี! คุณได้ติดตั้ง osTicket บนเซิร์ฟเวอร์ Ubuntu 16.04 เรียบร้อยแล้ว