Zahtjevi
Prije nego što počneš
Instalirajte PHP
Instalirajte MariaDB
Instalirajte Nginx
Instalirajte osTicket
osTicket je sustav za kupnju ulaznica otvorenog koda za korisničku podršku. OsTicket izvorni kod javno je hostiran na Githubu . U ovom vodiču naučit ćete kako instalirati i konfigurirati osTicket na CentOS 7.
Zahtjevi
- HTTP poslužitelj koji pokreće Nginx ili Apache. Ovaj vodič će koristiti Nginx.
- Preporuča se PHP verzija 5.6 do 7.2, 7.2
mysqli
, gd
, gettext
, imap
, json
, mbstring
, i xml
proširenje za PHP
- MySQL baza podataka verzija 5.0 ili novija ili MariaDB ekvivalent
Prije nego što počneš
Provjerite verziju CentOS-a.
cat /etc/centos-release
# CentOS Linux release 7.6.1810 (Core)
Napravite novi non-root
korisnički račun s sudo
pristupom i prebacite se na njega.
useradd -c "John Doe" johndoe && passwd johndoe
usermod -aG wheel johndoe
su - johndoe
NAPOMENA: Zamijenite johndoe
svojim korisničkim imenom.
Postavite vremensku zonu.
timedatectl list-timezones
sudo timedatectl set-timezone 'Region/City'
Provjerite je li vaš sustav ažuriran.
sudo yum update
Instalirajte potrebne pakete.
sudo yum install -y socat git wget unzip vim
Onemogućite SELinux i vatrozid.
sudo setenforce 0 ; sudo systemctl stop firewalld ; sudo systemctl disable firewalld
Instalirajte PHP
Postavite Webtatic YUM repo.
sudo yum install epel-release
sudo rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
Instalirajte PHP, kao i potrebna PHP proširenja.
sudo yum install -y php72w php72w-cli php72w-fpm php72w-common php72w-mbstring php72w-curl php72w-gd php72w-mysql php72w-json php72w-xml php72w-imap php72w-intl php72w-pecl-apcu php72w-opcache
Provjerite verziju.
php -v
# PHP 7.2.21 (cli) (built: Aug 4 2019 08:42:27) ( NTS )
# Copyright (c) 1997-2018 The PHP Group
# Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
Provjerite instalirana PHP proširenja.
php -m
# mbstring
# curl
# gd
# PDO
# mysqli
# openssl
# . . .
Pokrenite i omogućite PHP-FPM.
sudo systemctl start php-fpm.service
sudo systemctl enable php-fpm.service
Instalirajte MariaDB
Instalirajte MariaDB repo baze podataka.
sudo vim /etc/yum.repos.d/MariaDB.repo
Kopirajte/zalijepite ovo u /etc/yum.repos.d/MariaDB.repo
datoteku.
[mariadb]
name = MariaDB
baseurl = https://yum.mariadb.org/10.2/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
Instalirajte poslužitelj baze podataka MariaDB.
sudo yum install -y MariaDB-server MariaDB-client
Provjerite verziju.
mysql --version
# mysql Ver 15.1 Distrib 10.2.26-MariaDB, for Linux (x86_64) using readline 5.1
Pokrenite i omogućite MariaDB.
sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service
Pokrenite mysql_secure installation
skriptu za poboljšanje MariaDB sigurnosti i postavite lozinku za MariaDB root
korisnika.
sudo mysql_secure_installation
Povežite se s ljuskom MariaDB kao root korisnik.
sudo mysql -u root -p
# Enter password
Napravite praznu MariaDB bazu podataka i korisnika za osTicket i zapamtite vjerodajnice.
CREATE DATABASE dbname;
GRANT ALL ON dbname.* TO 'username' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;
exit
NAPOMENA: Zamijenite dbname
i username
s odgovarajućim nazivima za vaše postavke. Zamijenite password
jakom lozinkom.
Instalirajte Nginx
Instalirajte Nginx.
sudo yum install -y nginx
Provjerite verziju.
nginx -v
# nginx version: nginx/1.12.2
Pokrenite i omogućite Nginx.
sudo systemctl start nginx.service
sudo systemctl enable nginx.service
Konfigurirajte Nginx za korištenje s osTicket-om.
sudo vim /etc/nginx/conf.d/osticket.conf
Kopirajte/zalijepite ovo u /etc/nginx/conf.d/osticket.conf
datoteku.
server {
listen 80;
server_name example.com;
root /var/www/osticket/upload;
index index.php index.html;
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;
}
if ($request_uri ~ "^/.*\.php(/[^\?]+)") {
set $path_info $1;
}
location ~ ^/scp/ajax.php/.*$ {
try_files $uri $uri/ /scp/ajax.php?$query_string;
}
location ~ ^/ajax.php/.*$ {
try_files $uri $uri/ /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;
fastcgi_param PATH_INFO $path_info;
fastcgi_pass 127.0.0.1:9000;
}
}
Spremite datoteku i izađite s :+ W+ Q.
Testirajte konfiguraciju.
sudo nginx -t
Ponovno učitajte Nginx.
sudo service nginx restart
Instalirajte osTicket
Napravite korijenski direktorij dokumenta.
sudo mkdir -p /var/www/osticket
Promijenite vlasništvo nad /var/www/osticket
imenikom u johndoe
.
sudo chown -R johndoe:johndoe /var/www/osticket
Idite do korijenske mape dokumenta.
cd /var/www/osticket
Preuzmite i raspakirajte najnovije izdanje osTicketa .
wget https://github.com/osTicket/osTicket/releases/download/v1.14.1/osTicket-v1.14.1.zip
unzip osTicket-v1.14.1.zip
rm osTicket-v1.14.1.zip
Kopirajte uzorak konfiguracijske datoteke.
sudo cp upload/include/ost-sampleconfig.php upload/include/ost-config.php
Promijenite vlasništvo nad /var/www/osticket
imenikom u nginx
.
sudo chown -R nginx:nginx /var/www/osticket
Pokrenite sudo vim /etc/php-fpm.d/www.conf
i postavite korisnika i grupu na nginx
. U početku će biti postavljeni na apache.
sudo vim /etc/php-fpm.d/www.conf
# user = nginx
# group = nginx
Napravite /var/lib/php/session/
imenik i promijenite vlasništvo u nginx
.
sudo mkdir -p /var/lib/php/session && sudo chown -R nginx:nginx /var/lib/php/session
Ponovno pokrenite PHP-FPM uslugu.
sudo systemctl restart php-fpm.service
Nakon što je sve konfigurirano, vrijeme je za pristup čarobnjaku za web instalaciju osTicket. Otvorite svoju stranicu u web-pregledniku i slijedite upute na zaslonu kako biste dovršili instalaciju.
Nakon instalacije, izbrišite setup
direktorij radi sigurnosti.
sudo rm -rf upload/setup
sudo chmod 0644 upload/include/ost-config.php