LNMP 环境下 WordPress 安装插件/主题时 FTP 问题的解决方法
在 LNMP(Linux + Nginx + MySQL/MariaDB + PHP)环境中安装 WordPress 插件或主题时,可能会遇到要求输入 FTP 账号密码的提示。这通常是因为 Web 服务器进程(如 www 或 nginx 用户)对 WordPress 目录没有足够的写入权限。
解决方案:修改目录所有者
最直接的解决方法是,通过 SSH 登录服务器,将 WordPress 安装目录的所有者更改为 Web 服务器运行用户(通常是 www、www-data 或 nginx)。
使用以下命令:
chown -R www /path/to/your/wordpress
请将 /path/to/your/wordpress 替换为您 WordPress 网站的实际根目录。例如,如果您的网站目录是 /home/wwwroot/www.example.com,则命令应为:
chown -R www /home/wwwroot/www.example.com
注意事项
- 确认 Web 服务器用户:首先请确认您的 LNMP 环境中 Web 服务器的运行用户。可以通过命令
ps aux | grep nginx或查看 Nginx 配置文件来确认。常见的用户有www、nginx或www-data。 - 使用正确的路径:确保命令中的路径是您 WordPress 的根目录,即包含
wp-admin、wp-content和wp-includes文件夹的目录。 - 递归操作:参数
-R表示递归操作,会将该目录及其所有子目录和文件的所有权都进行更改。
替代方案:修改 wp-config.php
如果您不希望更改文件所有权,也可以在 WordPress 的配置文件 wp-config.php 中(位于 WordPress 根目录)添加以下代码,直接授予文件写入权限:
define('FS_METHOD', 'direct');
添加这行代码后,WordPress 将尝试直接写入文件系统,通常可以绕过 FTP 请求。但请注意,这要求 wp-content 目录对 Web 服务器用户已经是可写的。
总结
解决此问题的核心是确保 Web 服务器进程对 WordPress 目录拥有写入权限。推荐使用 chown 命令修改目录所有者,这是 LNMP 环境下最标准、一劳永逸的解决方案。