怎样安装Yetishare

2022年10月22日 | 分类: 【源码】

【介绍】

全称:YetiShare File Hosting
演示:https://mfscripts.com/yetishare/demo.html
文档:https://docs.mfscripts.com/yetishare/
论坛:https://forum.mfscripts.com/ 颇多经验,不二之选
参考:https://www.chieng.cn/post/145.html

【安装】

比较简单。

【插件】

默认插件。
扩展插件。

【模板】

默认模板为 spirit 。
网上有 Mega 和 Pro 两种。

【设置】

设置:Nginx 静态化

参考:https://support.mfscripts.com/public/kb_view/78/

	server {
		listen 80;
		server_name domain.name www.domain.name;
		rewrite ^(.*) https://$server_name$1 permanent;
		}
	
	server	{
		listen 443 ssl http2;
		server_name domain.name www.domain.name;
		root /usr/local/nginx/html/domain.name/portal;
		index index.php;
		client_max_body_size 120m;

		ssl_certificate /etc/letsencrypt/live/domain.name/fullchain.pem;
		ssl_certificate_key /etc/letsencrypt/live/domain.name/privkey.pem;
		ssl_session_timeout 5m;
		ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
		ssl_protocols TLSv1.1 TLSv1.2 TLSv1.3;
		ssl_prefer_server_ciphers on;

		location ~ \.php$ {
			if (!-e $request_filename) { rewrite ^/(.*) /index.php?_page_url=$1 last; }
			fastcgi_pass unix:/run/php-fpm/www.sock;
			fastcgi_index index.php;
			fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
			fastcgi_param MOD_X_ACCEL_REDIRECT_ENABLED on;
			include fastcgi_params;
			}

		#location / {
			if (!-e $request_filename) {        
				rewrite ^/(.*) /index.php?_page_url=$1 last;
				}
		#	}

		location /files/ {
			internal;
		}

		location /logs/ {
			deny all;
		}

		location ~* \.(php|txt|xml|js|css|flv|ico|pdf|avi|mov|ppt|doc|mp3|wmv|wav|mp4|m4v|ogg|webm|aac|eot|ttf|otf|woff|svg|jpg|jpeg|png|gif|swf|webp)$ {
			expires 1d;
			}

		}

涉及 API,尚未验证:

    # handle requests to the API
    location ~ /api/v2/(.+)$ {
        if (!-e $request_filename) { rewrite ^/api/v2/(.*) /api/v2/index.php?_page_url=$1 last; }
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME   $document_root$fastcgi_script_name;
        include        fastcgi_params;
    }

参考:https://forum.mfscripts.com/threads/yetishare-nginx-help.3141/

【翻译】

YetiShare 的 i18n 的特殊性:
1. 语言文件存储于数据库中,以键值模式存储。并非通过读取单独的语言文件而实现。
2. 可以将语言翻译导出为 .CSV文件进行进一步离线翻译。
3. 可以通过新建语言,再导入相应 .CSV文件。导入后,词条将被锁定,仅限在线编辑。
4. 可以通过导入 .CSV文件更新指定语言,但仅限于解锁词条。
5. 因此,如果涉及离线编辑较大范围词条,请一次性完成翻译工作后,在线删除原语言数据,再重新新建语言,全新导入。

创建新语言步骤:
进入后台,点击
Site Configuration然后点击translation。
截下来点击 Add Languages。
Language Name 里输入简体中文,Text Direction保持默认从左到右。
Language Flag选择cn.png。
Language Code选择ZH-CN。
然后点击Add Languages。即可。
导入语言
点击右下角的Import Translations,
Import Language里选择刚才建立的 简体中文
Translations CSV将下载下来的Chinese.csv
在后台设置里,设置语言为简体中文,然后退出登录,再打开就是中文了。

【排障】

问题:无法访问 /js/uploader.js 和 assets/js/translations.js

此问题在界面上表现为不显示上传界面。
并非程序包中缺失这两个文件,而是涉及 nginx 静态化设置。请参照以上推荐设置。

参考:https://forum.mfscripts.com/threads/some-js-files-404.4266/#post-13919

问题:无法导出语言包

此问题在界面上表现为导出语言包时出现空白页面。

问题应该与服务器权限有关。YetiShare应该对于 Apache 更友好,cache 目录下新建的目录所有者均为 apache 。

临时解决方案:重新设置 cache 所有者为 nginx 并全部 777 。
根本解决方案:换 apache 环境应该能避免。

问题:头像不显示

问题应该与服务器权限有关。参考上条。

问题:上传模板.zip包无结果

待决。应该与服务器权限有关。

问题:插件目录中的插件不被识别

待决。应该与服务器权限有关。