Closed jim-kirisame closed 6 years ago
是我描述的不清楚了。现在我希望通过某个域名的二级目录来访问mindoc,类似于http://localhost/mindoc/,但是他的静态文件加载目录还是在http://localhost/static/,而不是希望的http://localhost/mindoc/static/。
这个需要用nginx做代理,因为MinDoc是自寄宿的,不需要用web容器承载,所以不用代理无法实现你说的虚拟目录。
是的,目前用的就是nginx的代理,但是我并不能把所有指向static目录的东西都重写到mindoc/static目录吧。建议使用类似于gitea的那种方案,在配置文件中指定目录。
mindoc现在在模板里面使用的是类似于这样的路径
<link href="/static/bootstrap/css/bootstrap.min.css" rel="stylesheet">
而gitea使用的是类似与这样的路径
<link rel="stylesheet" href="{{AppSubUrl}}/assets/octicons-4.3.0/octicons.min.css">
代码里面大部分页面已经支持cdnjs和cdncss的路径设置,只有少部分暂时不支持。后续版本都用这个函数生成路径吧。
还是无法解决现有问题。 几乎所有的链接都是绝对链接,点进去之后就是404。 例子:对于 http://localhost/mindoc/ 首页来说,登录按钮的链接被设置成了 http://localhost/login ,而不是希望的 http://localhost/mindoc/login
期望能够解决这个问题。
目前程序本身无法实现。只能尝试用nginx做反向代理实现吧。
hello 想问下你们nginx 代理 作者说的 location ~ .*.(ttf|woff2|eot|otf|map|swf|svg|gif|jpg|jpeg|bmp|png|ico|txt|js|css)$ {
#此处将路径执行 MinDoc 的跟目录
root "/var/go/godoc";
expires 30m;
}
@Darren-wh 是的,Mindoc的根目录
@jiangming1399 你好,意思就是比如我mindoc 解压在 /data/mindoc 那这个目录location ~ .*.(ttf|woff2|eot|otf|map|swf|svg|gif|jpg|jpeg|bmp|png|ico|txt|js|css)$ {
root "/var/go/godoc"; expires 30m; }
那么这里 root 就设置为/data/mindoc ? 是mindoc的安装目录是吧。? 那么我的nginx代理必须要和这个mindoc安装机器是一台机器了?
@Darren-wh 不一定要一台机,你可以做个反代
@jiangming1399 但是这步是必须要设置的啊 ttf|woff2|eot|otf|map|swf|svg|gif|jpg|jpeg|bmp|png|ico|txt|js|css)$ {
root "/var/go/godoc"; expires 30m;
如果我的nginx机器肯定不会装mindoc,除非我在mindoc 上装个nginx部署这个,然后再到另外一台机器做个反向代理映射到mindoc机器的 nginx上?
@Darren-wh 是的
还是无法解决现有问题。 几乎所有的链接都是绝对链接,点进去之后就是404。 例子:对于 http://localhost/mindoc/ 首页来说,登录按钮的链接被设置成了 http://localhost/login ,而不是希望的 http://localhost/mindoc/login
期望能够解决这个问题。
已经解决了,conf配置修改二级路径一行代码即可,我反代到nginx下二级目录没问题~
conf配置修改二级路径一行代码即可,我反代到nginx下二
请问要如何配置呢?我现在这么配置,静态资源都是不对的
#wiki网站配置,来自:https://mindoc.com.cn/docs/mindochelp/mindoc-nginx
location ^~/wiki/ {
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header Host $http_host;
proxy_set_header X-Forwarded-Proto $scheme;
#此处配置 MinDoc 程序的地址和端口号
proxy_pass http://127.0.0.1:8181/;
#proxy_redirect $scheme://$host:$server_port/ /wiki/;
}
现有的静态文件的加载路径都是根目录的static文件夹,如果将mindoc放入二级目录,则无法正常加载静态资源。希望可以添加相关配置以解决此问题。