# /srv **/srv** holds data that is served to the outside world by services running on this machine. The idea is to give web servers, FTP servers, and similar daemons a dedicated, clearly named location for their content, separate from system configuration in `/etc` and variable system data in `/var`. ``` /srv/http/ web server document root (nginx, Apache) /srv/ftp/ FTP server root /srv/git/ bare Git repositories hosted over SSH or git-daemon /srv/tftp/ TFTP files for PXE network booting ``` In practice `/srv` is less consistently used than the FHS intends. Many distributions and packages default to placing served content in `/var/www`, `/home/user/public_html`, or a custom path configured in the service's own config file. The Filesystem Hierarchy Standard recommends `/srv` for this purpose, but there is no enforcement mechanism. When a machine hosts multiple services or multiple virtual hosts, subdirectories under `/srv` provide a clean separation. A web server configuration pointing `DocumentRoot` to `/srv/http/example.com` makes it immediately clear from the path what the directory is for and who is responsible for its contents.