很多人碰到网站文章要改,第一反应是登后台。可后台密码忘了,或者压根不知道后台地址,于是想起自己还有FTP账号。心里琢磨:FTP能连上服务器,看到那么多文件,找到文章对应的文件改一改不就行了?说实话,这个念头我也有过,而且真这么干过一回,结果差点把整个站搞崩。
先弄清楚一件事:你FTP连上去看到的那些文件,绝大多数情况下跟文章内容没关系。现在市面上常见的网站系统,不管是WordPress、织梦、帝国,还是各种企业建站CMS,文章都存在数据库里。数据库是MySQL或者别的,它不在FTP能看到的目录里。FTP看到的是程序文件、模板文件、图片、CSS、JS这些东西。你打开一个叫“article.php”或者“show.php”的文件,里面全是代码,没有你写的文章标题和正文。文章标题和内容是在数据库某张表里存着,比如wp_posts或者dede_archives。FTP碰不到这些表。
那有人会说:我网站是纯静态的,每个文章一个HTML文件。这种确实能用FTP改。你找到对应的.html文件,下载下来,用记事本或者VS Code打开,把文字替换掉,再传回去。但注意编码问题,UTF-8带BOM和不带BOM搞错了,页面会乱码。还有文件权限,传上去之后权限变成644还是755,弄错了网站可能打不开。更麻烦的是,如果你改的是首页或者列表页,里面往往有分页、推荐位、最新文章调用,你手动改一个HTML,其他页面还是旧的,时间一长自己都记不清哪个改过哪个没改。
我见过最典型的情况:一个朋友用FTP进了服务器,看到根目录下有个index.html,以为那就是文章列表。他直接改里面的文字,保存上传。结果网站首页确实变了,但点进任何一篇文章都404。为什么?因为那个index.html只是个静态缓存或者跳转页,真正的文章路由是index.php在管。他改的那个文件根本不被程序读取,或者改完之后跟数据库里的数据对不上,程序一渲染就报错。
如果你真的想改文章,正确路径只有两条。第一条,找回后台。后台地址通常是域名后面加/admin、/wp-admin、/dede这类。密码忘了,可以通过数据库改。用phpMyAdmin登录数据库,找到用户表,把密码字段改成已知的MD5值,或者用官方提供的密码重置工具。第二条,直接改数据库。用phpMyAdmin或者Navicat连上数据库,找到文章表,直接编辑字段。但改之前一定一定先导出备份。我见过有人直接改数据库,把文章正文里的引号或者HTML标签弄乱了,前台页面直接白屏。还有改错表的情况,把用户表当文章表改了,整个网站登录不了。

那FTP就完全没用吗?也不是。FTP可以用来改模板文件。比如你想把文章页的“作者”两个字改成“写手”,或者调整一下字体大小,这属于改主题。找到wp-content/themes/你的主题/single.php,改里面的HTML和CSS。但改模板也有风险,PHP语法写错一个分号,整站就500错误。而且主题一更新,你的修改全被覆盖。
说个真实数据。我统计过身边二十多个用FTP改过网站的人,只有三个成功改动了静态HTML页面,剩下十七个要么改错文件导致页面错乱,要么把数据库里的序列化数据弄坏,最后花钱找人恢复。其中一个最惨,他直接删了FTP里的一个叫“config.php”的文件,以为那是文章配置文件,结果网站直接连不上数据库,整个站瘫痪两天。
所以,如果你现在正拿着FTP账号,准备进去改文章,我劝你先停一下。打开浏览器,试试后台地址。实在不行,找服务商要数据库密码。再不行,花几十块钱找人帮你改。FTP不是不能碰,但用它来改文章,就像用菜刀拧螺丝,不是完全拧不动,但大概率会把螺丝拧花,最后连菜刀都崩了刃。
真要动手,记住三件事:先备份整个网站文件和数据库,再确认文章到底存在哪里,最后只改你确定能改的那一个文件。改完立刻刷新前台看效果,不对就马上还原。别嫌麻烦,这比网站崩了再救要省事得多。