转载自:http://blog.sina.com.cn/s/blog_633bf5c10100txl5.html
不是很喜欢用apt的方式安装,就从网上下载了wordpress放到/var/www文件夹里面(安装apache之后默认的网页文件夹就是这个,所有的PHP等网页文件都有放到这里才能解决)。
然后进行安装的过程就不介绍了,要解决的问题是,怎么样让wordpress自动更新,自动升级,自动安装插件。
每次选择在wordpress里面安装插件,或者升级的时候,都会要求我输入ftp的帐号密码,但是我哪里来的ftp的帐号密码呢,安装过程中都没有设置这一项。后来我就安装了vsftpd,安装好之后不知道为什么帐号和密码与我平时用的那个系统帐号是一样的。然后在wordpress里面升级的时候,ftp这关是过了。但是当插件下载好之后,却告诉我无法在wp-content/upgrade文件夹创建它的文件夹。
这是个大大的问题啊。网上解决这个问题的方法好像都是针对网站的,但是我的是在本机上安装的,按照他们的方法,解决不了我的问题。不过他们的方法给我提供了思路,就是出现这个问题的原因是因为wordpress这个文件夹的所有者和apache目前运行的所有者不一致,wordpress为了安全起见,从而设置了这个障碍。
然后我就去找关于apache配置文件的东西。但是蛋疼的是,ubuntu用apt安装的apache,配置文件和常见的不一样,比如说怎么设置DocumentRoot,常见的在httpd.conf里面就可以配置了。但是ubuntu不行啊。
还好,看到一本书上说ubuntu里面的apache文件的一些功能。知道了/etc/apache2/envvars这个文件是存放环境变量的。书上就这么一句话,真够折腾人的啊,也不解释多一点。
然后我打开这个文件来看,看到这两句:
export APACHE_RUN_USER=www-data
export APACHE_RUN_GROUP=www-data
心里豁然开朗,apache运行的用户名是www-data,用户组是www-data。holyshit,终于明白了。
现在开始解决问题。
先将wordpress的所有者设为www-data(当人也可以在apache的那个文件夹里面将apache的所有者改为你喜欢的那个用户,比如root),在终端执行:sudo chown -R www-data /var/www/wordpress
然后,让这个文件夹可读写。sudo chmod -R 755 /var/www/wordpress
先将wordpress的所有者设为www-data(当人也可以在apache的那个文件夹里面将apache的所有者改为你喜欢的那个用户,比如root),在终端执行:sudo chown -R www-data /var/www/wordpress
然后,让这个文件夹可读写。sudo chmod -R 755 /var/www/wordpress