Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

使用 https 访问除音乐格式外的文件时弹出 404 #15

Closed
ShadowLyin opened this issue Jan 29, 2021 · 5 comments
Closed

使用 https 访问除音乐格式外的文件时弹出 404 #15

ShadowLyin opened this issue Jan 29, 2021 · 5 comments
Labels
bug Something isn't working

Comments

@ShadowLyin
Copy link

本地系统: Windows 10 20H2 专业版

软件版本: 0.5.5-win-x64 (使用 pm2 启动)

问题描述:原来使用 nginx 反代 http 后,访问 kikoeru 的 txt、jpg 等格式文件时,显示 404(见截图)。使用局域网 ip 访问没有任何问题,怀疑是否是因为 nginx 的配置不正确的问题,而转向使用 kikoeru 自带的 https 来搭建,但是仍然无法访问。下面附上我的 nginx.conf 和 kikoeru/config.json 的相关字段。

屏幕截图
image

nginx.conf

http {
    include       mime.types;
    default_type  application/octet-stream;
    server_names_hash_bucket_size 64;
    server_tokens off;

    log_format  emby  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for" $request_time $server_port "$http_x_emby_authorization"';


    log_format default '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for" $request_time $server_port';

    sendfile        off;  

    gzip on;   
	gzip_disable "msie6";

	gzip_comp_level 6;
	gzip_min_length 1100;
	gzip_buffers 16 8k;
	gzip_proxied any;
	gzip_types
	    text/plain
	    text/css
	    text/js
	    text/xml
	    text/javascript
	    application/javascript
	    application/x-javascript
	    application/json
	    application/xml
	    application/rss+xml
	    image/svg+xml;

    proxy_connect_timeout 1h;
    proxy_send_timeout 1h;
    proxy_read_timeout 1h;
    tcp_nodelay on;  

server {

    listen [::]:443 ssl http2;	
    listen 443 ssl http2;	
    proxy_buffering off;        

    server_name xxxxxxxxx;    

    error_page 497 301 =307 https://$http_host$request_uri;

    access_log  logs/kikoeru.log  default;  

        ssl_session_timeout 30m;
        ssl_protocols TLSv1.2 TLSv1.1 TLSv1;
	ssl_certificate      xxxxxx.crt;  
	ssl_certificate_key  xxxxxx.key;  
        ssl_session_cache shared:SSL:10m;

     location ^~ /swagger { 
        return 404;
}

     location / {
        proxy_pass http://127.0.0.1:8888; 

	proxy_hide_header X-Powered-By;	 
	proxy_set_header Range $http_range;  
	proxy_set_header If-Range $http_if_range;  
	proxy_set_header X-Real-IP $remote_addr;  
        proxy_set_header Host $host;  
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;  

	add_header 'Referrer-Policy' 'origin-when-cross-origin';
	add_header Strict-Transport-Security "max-age=15552000; preload" always;
	add_header X-Frame-Options "SAMEORIGIN" always;
	add_header X-Content-Type-Options "nosniff" always;
	add_header X-XSS-Protection "1; mode=block" always;

        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection $http_connection;
    }
}

kikoeru/config.json

{
	"maxParallelism": 16,
	"rootFolders": [
		{
			"name": "Dliste",
			"path": "F:\\Voices\\Dlsite"
		}
	],
	"coverFolderDir": "C:\\Users\\AppData\\Local\\Programs\\kikoeru\\covers",
	"databaseFolderDir": "C:\\Users\\AppData\\Local\\Programs\\kikoeru\\sqlite",
	"auth": true,
	"md5secret": "xxxxxxxxxxx",
	"jwtsecret": "xxxxxxxxxxx",
	"expiresIn": 2592000,
	"scannerMaxRecursionDepth": 2,
	"pageSize": 12,
	"tagLanguage": "zh-cn",
	"retry": 5,
	"dlsiteTimeout": 10000,
	"hvdbTimeout": 10000,
	"retryDelay": 2000,
	"httpProxyHost": "",
	"httpProxyPort": "",
	"version": "0.5.5",
	"listenPort": 8888,
	"skipCleanup": false,
	"httpsEnabled": true,
	"httpsPrivateKey": "xxxxxxx.key",
	"httpsCert": "xxxxxxxxx.crt",
	"httpsPort": 8443
}
@umonaca
Copy link
Collaborator

umonaca commented Jan 29, 2021

昨天调试的时候访问API遇到过类似问题,怀疑PWA缓存控制有bug,因为Ctrl + Shift + R就出来了。不过当时没多想因为看上去基本上都能用,没测试得这么细。
我得想想这个怎么搞。其实我并不会写Service Worker所以直接用了Workbox的GenerateSW,没想到这么多问题。
如果着急用的话,既然你是用源码安装,可以用SPA而非PWA,然后再删除PWA+清除浏览器缓存或者数据(其实就是把Service Worker清除掉),这样应该就能用了。

@ShadowLyin
Copy link
Author

昨天调试的时候访问API遇到过类似问题,怀疑PWA缓存控制有bug,因为Ctrl + Shift + R就出来了。不过当时没多想因为看上去基本上都能用,没测试得这么细。
我得想想这个怎么搞。其实我并不会写Service Worker所以直接用了Workbox的GenerateSW,没想到这么多问题。
如果着急用的话,既然你是用源码安装,可以用SPA而非PWA,然后再删除PWA+清除浏览器缓存(其实就是把Service Worker清除掉),这样应该就能用了。

好的,不过我不是用源码安装的,我是直接下打包好的程序。
不过近期基本可以使用局域网 ip 访问来代替,所以就等待修复吧。

@umonaca umonaca added the bug Something isn't working label Jan 29, 2021
@umonaca
Copy link
Collaborator

umonaca commented Jan 29, 2021

昨天调试的时候访问API遇到过类似问题,怀疑PWA缓存控制有bug,因为Ctrl + Shift + R就出来了。不过当时没多想因为看上去基本上都能用,没测试得这么细。
我得想想这个怎么搞。其实我并不会写Service Worker所以直接用了Workbox的GenerateSW,没想到这么多问题。
如果着急用的话,既然你是用源码安装,可以用SPA而非PWA,然后再删除PWA+清除浏览器缓存(其实就是把Service Worker清除掉),这样应该就能用了。

好的,不过我不是用源码安装的,我是直接下打包好的程序。
不过近期基本可以使用局域网 ip 访问来代替,所以就等待修复吧。

PM2不是启动js的么?怎样启动的Windows版程序呢?

@ShadowLyin
Copy link
Author

昨天调试的时候访问API遇到过类似问题,怀疑PWA缓存控制有bug,因为Ctrl + Shift + R就出来了。不过当时没多想因为看上去基本上都能用,没测试得这么细。
我得想想这个怎么搞。其实我并不会写Service Worker所以直接用了Workbox的GenerateSW,没想到这么多问题。
如果着急用的话,既然你是用源码安装,可以用SPA而非PWA,然后再删除PWA+清除浏览器缓存(其实就是把Service Worker清除掉),这样应该就能用了。

好的,不过我不是用源码安装的,我是直接下打包好的程序。
不过近期基本可以使用局域网 ip 访问来代替,所以就等待修复吧。

PM2不是启动js的么?怎样启动的Windows版程序呢?

pm2 start kikoeru.exe

@umonaca
Copy link
Collaborator

umonaca commented Jan 29, 2021

v0.5.6已修复,无需额外操作,不需要手动清除缓存等。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants