Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

When the directory itself being a symlink does not work. #2646

Open
hanxi opened this issue Jul 19, 2024 · 2 comments · May be fixed by #2711
Open

When the directory itself being a symlink does not work. #2646

hanxi opened this issue Jul 19, 2024 · 2 comments · May be fixed by #2711
Assignees
Labels
staticfiles Static file serving

Comments

@hanxi
Copy link

hanxi commented Jul 19, 2024

My test code:

from fastapi import FastAPI
import uvicorn

from staticfiles import StaticFiles

app = FastAPI()
app.mount("/music", StaticFiles(directory="/home/hanxi/work/xiaomusic/music", follow_symlink=True), name="music")

uvicorn.run(
    app,
    host=["::", "0.0.0.0"],
    port=3333,
)

The directory /home/hanxi/work/xiaomusic/music is a symlink.

> ls -l /home/hanxi/work/xiaomusic/music
lrwxrwxrwx 1 hanxi hanxi 26 Apr 30 12:10 /home/hanxi/work/xiaomusic/music -> /home/hanxi/nas/data/music

I fix this in hanxi@831cb5d

Need pr?

Important

  • We're using Polar.sh so you can upvote and help fund this issue.
  • We receive the funding once the issue is completed & confirmed by you.
  • Thank you in advance for helping prioritize & fund our backlog.
Fund with Polar
@Kludex
Copy link
Member

Kludex commented Sep 29, 2024

I guess this makes sense. We did have a security advisory about symlinks, so I'm a bit cautious.

Would you like to create a PR? Also, check the advisory GHSA-v5gw-mw7f-84px and see if we will not introduce something similar. 🙏

Thanks!

@hanxi
Copy link
Author

hanxi commented Sep 29, 2024

I test GHSA-v5gw-mw7f-84px case. test result is 404 Not Found. Review PR #2711 please.
Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
staticfiles Static file serving
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants