我的知识记录

FTP中.htaccess文件作用_Apache伪静态与访问控制

FTP连接到服务器后看到的文件夹列表因主机环境而异,Linux虚拟主机和Windows虚拟主机的目录结构不同,cPanel、宝塔、DirectAdmin等不同面板的默认目录也有差异。但核心目录的作用是相通的,比如网站根目录、日志目录、临时目录、配置目录。本文按目录功能分类讲解,覆盖Linux和Windows环境下的常见目录,说明每个目录的作用、是否可以删除、权限设置建议、常见问题处理。读完本文你就能清楚地知道FTP里每个文件夹是干什么的,管理文件时不再迷茫。

var文件夹存放可变数据,包括运行时文件、缓存、锁文件、spool文件等。系统级的/var目录下有/var/log(日志)、/var/tmp(临时文件)、/var/run(进程PID文件)、/var/spool(邮件和打印队列)。虚拟主机用户目录下的var目录可能存放用户级的运行时数据。大部分站长不需要直接操作var目录,日志在logs目录查看,临时文件在tmp目录。如果程序需要写入运行时数据,可能会在var目录创建文件,确保该目录有写入权限。不要随意删除var目录下的文件,可能导致正在运行的进程异常。

bin文件夹存放可执行文件(二进制程序和脚本)。系统级的/bin目录存放基础命令(ls、cp、mv等),/usr/bin存放用户程序,这些目录普通用户没有写入权限,FTP中通常看不到。虚拟主机用户目录下的bin目录可能存放用户自己安装的程序或脚本,如自定义的备份脚本、命令行工具。如果你不需要自己安装命令行程序,bin目录基本用不到。不要把网站文件放到bin目录,无法通过域名访问。如果自己编写脚本放到bin目录,需要设置可执行权限(chmod +x)才能运行。

cgi-bin文件夹用于存放CGI脚本(Perl、Python、Shell等可执行脚本),是早期动态网页技术的标准目录。cgi-bin目录通常在网站根目录下,有执行权限,放在这里的脚本可以通过http://域名/cgi-bin/脚本名执行。现在PHP、Node.js等技术已经取代了CGI,大部分网站不需要cgi-bin目录。但有些老程序或特定功能(如FormMail表单处理)仍然需要CGI支持。如果你不用CGI,可以删除cgi-bin目录,不影响PHP网站运行。如果需要用CGI,确保cgi-bin目录有执行权限(755),脚本文件有执行权限,脚本第一行指定解释器路径(如#!/usr/bin/perl)。

.git文件夹是Git版本控制系统的仓库数据目录,包含所有提交历史、分支、标签、配置信息。如果你用Git管理网站代码,在网站目录下初始化Git仓库后会生成.git目录。.git目录包含完整的代码历史,如果放到网站根目录且允许访问,他人可以通过http://域名/.git/config获取仓库信息,甚至下载完整源码,造成代码泄露。所以绝对不要把.git目录放到网站根目录下,或者在Web服务器配置中禁止访问.git目录(Nginx用location ~ /.git { deny all; },Apache用.htaccess的RewriteRule)。正确的做法是用Git部署时,代码仓库放在网站根目录外,只把需要运行的文件复制或软链接到根目录。

htdocs是XAMPP、WAMP等本地集成环境和部分Apache虚拟主机的网站根目录名称。htdocs是hypertext documents的缩写,即超文本文档目录,存放网页文件。如果你用XAMPP在本地开发网站,网站文件放在xampp/htdocs目录下,通过http://localhost访问。部分海外虚拟主机也用htdocs作为根目录。作用和public_html、wwwroot完全相同,只是命名不同。上传文件时确认主机的根目录名称,放到正确的目录下,不要因为名称不同而困惑。

public_html是cPanel面板Linux虚拟主机的网站根目录,域名访问的文件都放在这个目录下。你上传的网站程序(WordPress、dedecms等)、图片、CSS、JS等所有可通过域名访问的文件都要放在public_html里。这个目录的权限通常是750或755,所有者是你的cPanel用户。不要在public_html外放置需要通过域名访问的文件,否则访问不到。子域名或附加域名的根目录默认在public_html下的子目录,如public_html/blog,也可以在cPanel中修改为public_html外的目录。

www文件夹在很多虚拟主机中是public_html或wwwroot的符号链接(快捷方式),指向真正的网站根目录。有些主机同时提供www和public_html两个目录,其实是同一个位置,文件放哪个都一样。早期的一些主机面板用www作为根目录名称,现在更多用public_html或wwwroot。如果你在FTP中看到www和public_html同时存在,不要以为是两个独立目录,它们指向同一个位置,在一个目录中添加文件在另一个目录中也能看到。上传文件选哪个都行,但建议统一用一个,避免混淆。

站长反馈:「刚用虚拟主机时FTP里一堆文件夹不知道干嘛的,看了这篇才清楚public_html是放网站的,logs是看日志的,tmp是临时文件,以后管理文件不再乱删了」「之前把数据库备份放到public_html里,幸好看到文章说不能放根目录,赶紧移到backup目录,不然被人下载就麻烦了」。

经验总结:FTP目录结构虽然因面板和环境不同而有差异,但核心逻辑一致——网站根目录放可访问文件,根目录外放敏感文件和系统文件。记住几个关键目录:网站根目录(public_html/wwwroot)、日志目录(logs)、临时目录(tmp)、备份目录(backup)、证书目录(ssl)。管理网站文件时,上传前确认目录,删除前确认用途,权限设置遵循最小原则。遇到问题时先查日志(logs目录),很多错误都能从日志中找到原因。熟悉目录结构后,网站管理和故障排查都会高效很多。

FTP中.htaccess文件作用_Apache伪静态与访问控制

标签:

更新时间:2026-08-26 23:27:03

上一篇:华夏名网虚拟主机隐藏 .html 后缀返回301_Apache .htaccess与IIS web.config对照

下一篇:虚拟主机域名DNS缓存异常_本地与运营商区分