Earlier till 6 artifactory version we had a option to configure https port on server.xml , now from version 7 it is changed , here around 10 application teams are using a format https//artifactory.com:8543/artifactory in there code and during deployment In artifactory version 7 it is pointing to http//artifactory.com:8082/ui
Later after some research I used apache to route http to https , reverse proxy to https//artifactory.com but here I am unable to change to run as old url
my system.yaml file
shared:
extraJavaOpts: -Xmx4g -Xss256k
database:
type: derby
driver: org.apache.derby.jdbc.EmbeddedDriver
url: jdbc:derby:/opt/app/artifactory-oss-7.68.11/var/data/artifactory/derby;create=true
artifactory:
port: 8081
tomcat:
connector:
maxThreads: 200
sendReasonPhrase: true
relaxedPathChars: '"[]"'
relaxedQueryChars: '"[]"'
httpsConnector:
enabled: true
port: 8543
certificateFile: "/opt/app/artifactory-oss-7.68.11/var/etc/artifactory/security/ssl/server.crt"
certificateKeyFile: "/opt/app/artifactory-oss-7.68.11/var/etc/artifactory/security/ssl/server.key"
extraConfig: 'SSLProtocol="TLSv1.2"'
access:
http:
port: 8040
tomcat:
connector:
maxThreads: 50
sendReasonPhrase: true
apache configuration to run on https
Listen 443 https
<VirtualHost _default_:443>
# General setup for the virtual host, inherited from global configuration
#DocumentRoot "/var/www/html"
#ServerName www.example.com:443
ServerName artifactory
# Use separate log files for the SSL virtual host; note that LogLevel
# is not inherited from httpd.conf.
ErrorLog logs/ssl_error_log
TransferLog logs/ssl_access_log
LogLevel warn
# SSL Engine Switch:
# Enable/Disable SSL for this virtual host.
SSLEngine on
# SSL Protocol support:
# List the enable protocol levels with which clients will be able to
# connect. Disable SSLv2 access by default:
SSLProtocol all -SSLv2 -SSLv3
BrowserMatch "MSIE [2-5]" \
nokeepalive ssl-unclean-shutdown \
downgrade-1.0 force-response-1.0
# Per-Server Logging:
# The home of a custom SSL log file. Use this when you want a
# compact non-error SSL logfile on a virtual host basis.
CustomLog logs/ssl_request_log \
"%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
ProxyRequests off
SSLProxyEngine on
ProxyPreserveHost on
SSLProxyCheckPeerCN off
SSLProxyCheckPeerExpire off
SSLProxyCheckPeerName off
SSLProxyVerify none
SSLVerifyClient none
ProxyPass /ui/ http://artifactory.com:8082/ui/
ProxyPassReverse /ui/ http://artifactory.com/ui
</VirtualHost>
I also configured server.xml like the old one (artifactory 6 in artifactory 7)
It works on https like https://artifactory.com/ui
I want to configure as old url https//artifactory.com:8543/artifactory were as the applications team, monitoring team will not have any issue
To change the port that your reverse proxy is listening on, you just need to change the configuration there.
You currently have apache configuration to run on https
Switch this line to
and you will have artifactory accessible on https://artifactory.com:8543
Regarding the /artifactory endpoint, as you have noted, this was switched between 6.x and 7.x due to the change to a micro service architecture.
Now, when reaching the UI you go to https://artifactory.com:8543/ui When trying to download Artifacts you still go to https://artifactory.com:8543/artifactory
This is baked in and can not be changed.