本文写于 2023年03月25日,距今已超过 1 年,距 2023年03月25日 的最后一次修改也已超过 3 个月,部分内容可能已经过时,您可以按需阅读。如果图片无法显示或者下载链接失效,请给我反馈,谢谢!


Visits: 57

0 0 投票数
评分

我发现了一个叫 OpenSupports 的开源工单管理系统,我打算部署一下玩一玩。

我还没想好怎么利用它:我打算用它跟踪一些复杂的、长期的事情,而用“滴答清单”、“Microsoft To Do”这样的 TODO List 来跟踪一些简单的、日常的、重复的提醒。

安装挺简单的,OpenSupports 是基于 PHP + MySQL/MariaDB 的,所以解压之后放在服务器目录上,直接用浏览器访问就可以看到安装界面,剩下的可以全部在网页端搞定。

安装没有大坑,但是官方的脚本是基于 Apache 的,如果使用 NGINX 就需要“手动翻译”那些规则。

GitHub Issue 页面的内容基本没问题:https://github.com/opensupports/opensupports/issues/123,整理修改后的内容如下:

# Special API location block.
location /api {
    try_files $uri $uri/ /api/index.php$request_uri;
}

# Special config for image download
location /api/system/download {
    try_files $uri /api/index.php/system/download?$args;
}

# Catch-all for rest.
location / {
    try_files $uri $uri/ /index.php;
}

location ~ [^/]\.php(/|$) {
    include fastcgi.conf;
    fastcgi_param PHP_ADMIN_VALUE "open_basedir=$document_root/:/tmp/:/proc/:/external_nfs_storage/opensupports/";
    fastcgi_split_path_info ^(.+?\.php)(/.*)$;
    set $path_info $fastcgi_path_info;
    fastcgi_param PATH_INFO $path_info;
    try_files $fastcgi_script_name =404;
    fastcgi_pass unix:/tmp/php-cgi.sock;
    fastcgi_index index.php;
} 

因为我把 /api/files 用软连接挂载出去了(/vda 没有那么多空间,所以用 ln -s 挂到了 NFS 上),这样的话就还需要改 fastcgi - open_basedir

安装时设置的用户,要从 ticketing.example.com/admin 登录,这是带管理权限的账户,如果直接从 ticketing.example.com 登录会说用户找不到。管理账户和非管理账户可以同名,只是从不同的入口登录,这一个设计还挺神奇的。

我用的是 mailgun 的邮件服务,但是安装界面没有提供协议、端口这些信息,那就只能把信息揉在 URI 里面了,tls://mailgun.smtp.org:587

另外遇到一个可能是 bug 的地方,那就是安装界面无法切换语言,切换了就是白屏,只能用英语安装完成之后,去设置里面改语言。

0 0 投票数
评分
发表留言
订阅评论
提醒
guest

在点击发表评论按钮时,网络请求的数据包含浏览器版本、操作系统版本和 IP 地址;您的网络服务提供商、雇主或学校、政府机构可能会看到您的访问活动;根据浏览器默认行为、操作系统设置和安全防护软件的设置不同,您的浏览器可能会也可能不会在本地 Cookies 缓存您输入的用户名、邮箱以便下次评论使用。

请对自己的言行负责。

您想以什么身份发表评论
邮箱将在您的评论被回复时给您通知
(可选)如果您也有个人网站,不妨分享一下
我对这篇文章的评分
这篇文章给您带来多大帮助
0 评论
内联反馈
查看所有评论