最近把自己的两个网站迁移到阿里云的ECS上,发现需要在新服务上做一些配置才能正常运行,百度找了很多资料,终于解决了问题。

迁移网站后其他都很正常,发现上传图片时提示无法创建目录,安装或删除插件时提示要输入ftp的账号和密码,查了很多资料都说是权限问题,但是按照百度的做法,完全解决不了问题,最终经过多次排查,才解决了问题。
解决方法
首先这的确是文件夹权限问题,用连接服务器后,我们先看一下目录的所有者是谁:
进入网站的安装目录,并列出wp-content文件夹的属性:
cd /home/wwwroot/xxxx cd wp-content ls -l
其中xxxx是网站但目录,这时候返回类似下面的属性
总用量 24 -rwxr-xr-x 1 root www 28 8月 30 23:47 index.php drwxr-xr-x 4 root www 4096 8月 30 23:48 languages drwxr-xr-x 6 root www 4096 9月 9 01:53 plugins drwxr-xr-x 4 root www 4096 8月 30 23:50 themes drwxr-xr-x 2 root www 4096 9月 9 01:53 upgrade drwxr-xr-x 7 root www 4096 8月 30 23:50 uploads
其实问题就出在这,lnmp的环境用户是www,文件夹由www创建,但所有权却是root,因此只要把所有权改成www就可以了:
cd.. chown -R www:www xxxx
大功告成,这是查看一下属性:
cd xxxx ls -l
所有者已经变成www了,网站的上传功能和插件安装也正常了。