Merge branch 'jk/http-walker-limit-redirect-2.9'
Transport with dumb http can be fooled into following foreign URLs that the end user does not intend to, especially with the server side redirects and http-alternates mechanism, which can lead to security issues. Tighten the redirection and make it more obvious to the end user when it happens. * jk/http-walker-limit-redirect-2.9: http: treat http-alternates like redirects http: make redirects more obvious remote-curl: rename shadowed options variable http: always update the base URL for redirects http: simplify update_url_from_redirect
This commit is contained in:
@ -123,6 +123,7 @@ ScriptAlias /error/ error.sh/
|
||||
</Files>
|
||||
|
||||
RewriteEngine on
|
||||
RewriteRule ^/dumb-redir/(.*)$ /dumb/$1 [R=301]
|
||||
RewriteRule ^/smart-redir-perm/(.*)$ /smart/$1 [R=301]
|
||||
RewriteRule ^/smart-redir-temp/(.*)$ /smart/$1 [R=302]
|
||||
RewriteRule ^/smart-redir-auth/(.*)$ /auth/smart/$1 [R=301]
|
||||
@ -132,6 +133,19 @@ RewriteRule ^/ftp-redir/(.*)$ ftp://localhost:1000/$1 [R=302]
|
||||
RewriteRule ^/loop-redir/x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-x-(.*) /$1 [R=302]
|
||||
RewriteRule ^/loop-redir/(.*)$ /loop-redir/x-$1 [R=302]
|
||||
|
||||
# The first rule issues a client-side redirect to something
|
||||
# that _doesn't_ look like a git repo. The second rule is a
|
||||
# server-side rewrite, so that it turns out the odd-looking
|
||||
# thing _is_ a git repo. The "[PT]" tells Apache to match
|
||||
# the usual ScriptAlias rules for /smart.
|
||||
RewriteRule ^/insane-redir/(.*)$ /intern-redir/$1/foo [R=301]
|
||||
RewriteRule ^/intern-redir/(.*)/foo$ /smart/$1 [PT]
|
||||
|
||||
# Serve info/refs internally without redirecting, but
|
||||
# issue a redirect for any object requests.
|
||||
RewriteRule ^/redir-objects/(.*/info/refs)$ /dumb/$1 [PT]
|
||||
RewriteRule ^/redir-objects/(.*/objects/.*)$ /dumb/$1 [R=301]
|
||||
|
||||
# Apache 2.2 does not understand <RequireAll>, so we use RewriteCond.
|
||||
# And as RewriteCond does not allow testing for non-matches, we match
|
||||
# the desired case first (one has abra, two has cadabra), and let it
|
||||
|
Reference in New Issue
Block a user