0
Fork 0
mirror of https://github.com/caddyserver/caddy.git synced 2025-01-06 22:40:31 -05:00

ext: Only append extension if request is not for directory (fixes #173)

This commit is contained in:
Matthew Holt 2015-07-01 11:35:52 -06:00
parent 16f18bfeff
commit 4d066b7e30
2 changed files with 2 additions and 1 deletions

1
dist/CHANGES.txt vendored
View file

@ -6,6 +6,7 @@ CHANGES
- browse: Sort by clicking column heading or using query string
- core: Serving hostname that doesn't resolve issues warning then listens on 0.0.0.0
- errors: Missing error page during parse time is warning, not error
- ext: Extension only appended if request path does not end in /
- fastcgi: Fix for backend responding without status text
- fastcgi: Fix PATH_TRANSLATED when PATH_INFO is empty (RFC 3875)
- gzip: Enable by file path and/or extension

View file

@ -31,7 +31,7 @@ type Ext struct {
// ServeHTTP implements the middleware.Handler interface.
func (e Ext) ServeHTTP(w http.ResponseWriter, r *http.Request) (int, error) {
urlpath := strings.TrimSuffix(r.URL.Path, "/")
if path.Ext(urlpath) == "" {
if path.Ext(urlpath) == "" && r.URL.Path[len(r.URL.Path)-1] != '/' {
for _, ext := range e.Extensions {
if resourceExists(e.Root, urlpath+ext) {
r.URL.Path = urlpath + ext