这次安装wordpress真的是经历了各种坑,最终装好后一总结,发现原来是这么回事。我这篇文章就我这次安装wordpress的经历来谈一谈中途所遇到的坑,希望会对你有用
我这里说的是在ubuntu上安装的情形,所以可能有的文件位置与其他linux发行版的位置不一样,那就只能你自己摸索啦
如果你在下面的操作中遇见了问题,出现了和预期不一样的情形,请试着重启apache服务或者php服务,重启的命令如下:
sudo service apache2 restart
sudo service php7.0-fpm restart
##一、安装apache web服务器
sudo apt-get install apache2
应用位置位于/etc/apache2,部署网页文件的位置位于/var/www/html
##二、安装php类应用
sudo apt-get install php php-fpm libapache2-mod-php php-mcrypt php-mysql
libapache2-mod-php:与apache2服务器配套干活的
php-mcrypt:php内的加密支持扩展库,说实话我不知道这个是不是安装wordpress必须的
php-mysql:与mysql连接
应用位置位于/etc/php文件夹
##三、安装mysql
sudo apt-get install mysql-server
安装时会让设置用户名密码。
安装好后,使用命令进入mysql:mysql -u root -p
然后创建wordpress数据库:create database wordpress
##四、安装wordpress
这里就需要到wordpress官网下载安装包了:https://cn.wordpress.org/
下载好之后,解压开,把wordpress文件夹内的所有文件,放入/var/www/html文件夹内
重要步骤:将/var/www/html文件夹的所属人,用户组改为www-data,使用命令:
sudo chown www-data:www-data /var/www/html/ -R
上面这一步是关键中的关键,web服务器运行时进程的用户是www-data,如果不把这些文件夹、文件的所属人改为www-data,那么后面会有很多很多问题,但其实都是因为一个权限问题而已。如何查看web服务器运行时的所属用户呢?使用命令:ps aux | grep apache2,结果如下图:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Hqoq0DNH-1576419649685)(https://i2.wp.com/www.geekgao.top/wp-content/uploads/2017/08/%E5%BE%AE%E4%BF%A1%E6%88%AA%E5%9B%BE_20170827002852.png?resize=644,181)]
看到的这个用户,就是web服务器进程的用户,进程在进行任何操作时,都是以这个用户的权限为准的,如果我们不把/var/www/html下文件得所属用户改为www-data,那么wordpress安装、更新插件、主题时,会因为对文件夹没有相应的权限报错
##五、配置wordpress
这时候,访问主机地址,可以看到wordpress已经显示出来了。如果没有显示出来,请查看服务器端口配置(比如阿里云买的主机,可能会因为“安全组”没有开通80端口导致看不到页面)
此时看到的页面是wordpress的配置页面。图中填写的数据库我们刚才在安装mysql时已经创建了。填写完必要信息,提交即可。后面还会让填写网站管理员信息,填写完毕就好啦
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-KpDDWN6M-1576419649686)(https://i1.wp.com/www.geekgao.top/wp-content/uploads/2017/08/%E5%BE%AE%E4%BF%A1%E6%88%AA%E5%9B%BE_20170827003929.png?resize=708,493)]
距离大功告成还有一步:编辑/var/www/html/wp-config
在这个文件的末尾添加这样一行代码即可:
define('FS_METHOD', 'direct');
这个代码意思是:定义文件操作方式为direct,direct代表直接操作,也就是通过php本地操作文件I/O。当安装、更新插件时php脚本会去网络下载主题、插件,然后写入本地磁盘。如果不这样设置,默认会使用FTP方式操作服务器上的文件。我一开始就不知道这个设置,在配置ftp服务器上浪费了巨多时间。FS_METHOD参数的详细信息在如下页面可以找到(虽然这个页面内说direct是默认方式,但是我亲身体验发现并不是啊):https://codex.wordpress.org/Editing_wp-config.php
##六、其他
经过上面的安装已经大功告成,现在所有操作都没有问题了。下面我会不定时更新wordpress使用的小问题。
-
**1.**今天安装了JetPack插件,发现他提示如下:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-fCG3GuD4-1576419649687)(https://i1.wp.com/www.geekgao.top/wp-content/uploads/2017/08/%E5%BE%AE%E4%BF%A1%E5%9B%BE%E7%89%87_20170827010605.png?resize=647,56)]
安装php-xml即可:sudo apt-get install php-xml,然后重启apache服务器 -
**2.**关于wordpress的“固定链接”,如果没有开启apache的mod_rewrite功能,那么会找不到已经写好的文章。安装方法:编辑/etc/apache2/apache2.conf文件,更改如下位置为“All”
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-TxEd2IUw-1576419649687)(https://i1.wp.com/www.geekgao.top/wp-content/uploads/2017/08/%E5%BE%AE%E4%BF%A1%E6%88%AA%E5%9B%BE_20170827025905.png?resize=273,87)]
注意更改的是/var/www/html这个Directory,然后重启apache服务器:systemctl restart apache2