forgejo/cmd
wxiaoguang 52fb936773
Serve pre-defined files in "public", add "security.txt", add CORS header for ".well-known" (#25974)
Replace #25892

Close  #21942
Close  #25464

Major changes:

1. Serve "robots.txt" and ".well-known/security.txt" in the "public"
custom path
* All files in "public/.well-known" can be served, just like
"public/assets"
3. Add a test for ".well-known/security.txt"
4. Simplify the "FileHandlerFunc" logic, now the paths are consistent so
the code can be simpler
5. Add CORS header for ".well-known" endpoints
6. Add logs to tell users they should move some of their legacy custom
public files

```
2023/07/19 13:00:37 cmd/web.go:178:serveInstalled() [E] Found legacy public asset "img" in CustomPath. Please move it to /work/gitea/custom/public/assets/img
2023/07/19 13:00:37 cmd/web.go:182:serveInstalled() [E] Found legacy public asset "robots.txt" in CustomPath. Please move it to /work/gitea/custom/public/robots.txt
```
This PR is not breaking.

---------

Co-authored-by: silverwind <me@silverwind.io>
Co-authored-by: Giteabot <teabot@gitea.io>
2023-07-21 12:14:20 +00:00
..
actions.go Refactor to use urfave/cli/v2 (#25959) 2023-07-21 17:28:19 +08:00
admin.go Refactor to use urfave/cli/v2 (#25959) 2023-07-21 17:28:19 +08:00
admin_auth_ldap.go Refactor to use urfave/cli/v2 (#25959) 2023-07-21 17:28:19 +08:00
admin_auth_ldap_test.go Refactor to use urfave/cli/v2 (#25959) 2023-07-21 17:28:19 +08:00
admin_user.go Refactor to use urfave/cli/v2 (#25959) 2023-07-21 17:28:19 +08:00
admin_user_change_password.go Refactor to use urfave/cli/v2 (#25959) 2023-07-21 17:28:19 +08:00
admin_user_create.go Refactor to use urfave/cli/v2 (#25959) 2023-07-21 17:28:19 +08:00
admin_user_delete.go Refactor to use urfave/cli/v2 (#25959) 2023-07-21 17:28:19 +08:00
admin_user_generate_access_token.go Refactor to use urfave/cli/v2 (#25959) 2023-07-21 17:28:19 +08:00
admin_user_list.go Refactor to use urfave/cli/v2 (#25959) 2023-07-21 17:28:19 +08:00
admin_user_must_change_password.go Refactor to use urfave/cli/v2 (#25959) 2023-07-21 17:28:19 +08:00
cert.go Refactor to use urfave/cli/v2 (#25959) 2023-07-21 17:28:19 +08:00
cmd.go Refactor to use urfave/cli/v2 (#25959) 2023-07-21 17:28:19 +08:00
convert.go Refactor to use urfave/cli/v2 (#25959) 2023-07-21 17:28:19 +08:00
docs.go Refactor to use urfave/cli/v2 (#25959) 2023-07-21 17:28:19 +08:00
doctor.go Refactor to use urfave/cli/v2 (#25959) 2023-07-21 17:28:19 +08:00
dump.go Refactor to use urfave/cli/v2 (#25959) 2023-07-21 17:28:19 +08:00
dump_repo.go Refactor to use urfave/cli/v2 (#25959) 2023-07-21 17:28:19 +08:00
embedded.go Refactor to use urfave/cli/v2 (#25959) 2023-07-21 17:28:19 +08:00
generate.go Refactor to use urfave/cli/v2 (#25959) 2023-07-21 17:28:19 +08:00
hook.go Refactor to use urfave/cli/v2 (#25959) 2023-07-21 17:28:19 +08:00
hook_test.go Refactor internal API for git commands, use meaningful messages instead of "Internal Server Error" (#23687) 2023-03-29 14:32:26 +08:00
keys.go Refactor to use urfave/cli/v2 (#25959) 2023-07-21 17:28:19 +08:00
mailer.go Refactor to use urfave/cli/v2 (#25959) 2023-07-21 17:28:19 +08:00
main.go Refactor to use urfave/cli/v2 (#25959) 2023-07-21 17:28:19 +08:00
main_test.go Refactor to use urfave/cli/v2 (#25959) 2023-07-21 17:28:19 +08:00
manager.go Refactor to use urfave/cli/v2 (#25959) 2023-07-21 17:28:19 +08:00
manager_logging.go Refactor to use urfave/cli/v2 (#25959) 2023-07-21 17:28:19 +08:00
migrate.go Refactor to use urfave/cli/v2 (#25959) 2023-07-21 17:28:19 +08:00
migrate_storage.go Refactor to use urfave/cli/v2 (#25959) 2023-07-21 17:28:19 +08:00
migrate_storage_test.go Fix all possible setting error related storages and added some tests (#23911) 2023-06-14 11:42:38 +08:00
restore_repo.go Refactor to use urfave/cli/v2 (#25959) 2023-07-21 17:28:19 +08:00
serv.go Refactor to use urfave/cli/v2 (#25959) 2023-07-21 17:28:19 +08:00
web.go Serve pre-defined files in "public", add "security.txt", add CORS header for ".well-known" (#25974) 2023-07-21 12:14:20 +00:00
web_acme.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
web_graceful.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00
web_https.go Implement FSFE REUSE for golang files (#21840) 2022-11-27 18:20:29 +00:00