我正在尝试使用以下命令运行YouTrack实例:
java -Xmx1g -XX:MaxPermSize=250m -Djava.security.egd=/dev/zrandom -Djava.awt.headless=true -Djetbrains.youtrack.baseUrl=http://localhost/yt -Djetbrains.youtrack.disableBrowser=true -jar /opt/youtrack.jar 3579
而我有一个nginx代理(不相关的nginxconfiguration部分被省略):
upstream youtrack { server localhost:3579; } server { listen 80 default_server; listen [::]:80 default_server; server_name localhost; root /usr/share/nginx/html; location / { root /var/www/main; index index.html; } location /yt { rewrite /yt(.*) /$1 break; proxy_pass http://youtrack; proxy_redirect off; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $http_host; } }
每次当我inputurl http://localhost/yt我被redirect到http://localhost/rootGo通过YouTrack,然后显然得到404错误。 为什么会发生这种情况,如何才能让YouTrack工作的子url?
尝试添加/ yt contextPath到youtrack。
java -Xmx1g -XX:MaxPermSize=250m -Djava.security.egd=/dev/zrandom -Djava.awt.headless=true -Djetbrains.youtrack.baseUrl=http://localhost/yt -Djetbrains.youtrack.disableBrowser=true -jar /opt/youtrack.jar 3579/yt
从youtrack文档: https ://confluence.jetbrains.com/display/YTD6/Installing+YouTrack+with+JAR+Distribution
从YouTrack 6.0.12223开始,您可以使用以下命令运行YouTrack Standalone:
java -Xmx1g -XX:MaxPermSize=250m -Djava.awt.headless=true <Optional Java Start Parameters> -jar youtrack-<version>.jar [host:]<port>[/contextPath] [config file path]
实现对'contextPath'的支持实际上允许你现在运行YouTrack,并使用之前默认使用的根path。 以下是YouTrack服务器的各种URIconfiguration的一些命令示例:
java -Xmx1g -XX:MaxPermSize=250m -Djava.awt.headless=true -jar youtrack-6.0.12124.jar 8080 java -Xmx1g -XX:MaxPermSize=250m -Djava.awt.headless=true -jar youtrack-6.0.12124.jar 8080/youtrack java -Xmx1g -XX:MaxPermSize=250m -Djava.awt.headless=true -jar youtrack-6.0.12124.jar 127.0.0.1:8080 java -Xmx1g -XX:MaxPermSize=250m -Djava.awt.headless=true -jar youtrack-6.0.12124.jar 127.0.0.1:8080/youtrack