正在悠闲地加载

纪念手工搭建wordpress成功

之前想搞Hexo的时候,看网上有人说自己在主机上搭建WordPress还是比较考验动手能力的。是一个比较有挑战性的任务。那时候也尝试过一会,可能是因为看的教程不是特别好的缘故,所以失败了。今天花了一天的时间断断续续终于把想搞的WordPress搞成了,专门写一篇日志来记录下来。

起因是之前在WordPress.com上也用过托管的wp站点,写过2篇文章,昨天想要编辑一下却发现点了编辑按钮以后页面迟迟加载不出来。正巧自己也有云主机和域名都没有派上用场,所以还是抱着试试看的态度,再来搞一回。

教程主要来自官方https://wordpress.org/support/article/how-to-install-wordpress/

不过作为第一次安装的新手只看这个教程恐怕是不够的。我认为wp安装本身已经是无可挑剔了,只不过和它配套的其他软件还是稍微有点多。需要安装数据库MySQL/Maria,Apache,php运行环境,有的教程还会让你装phpmyadmin。一个数据库系统,一个web服务器,一个运行环境,还有数据库的管理工具。确实有3~4个额外的软件要装。可能还需要nginx?这点我没验证,因为我主机上已经装了nginx,回头第二次装的时候可以再验证一下nginx是不是必须的。

准备工作:

云主机环境: Debian GNU/Linux 10 (buster)

上面之前就装了一个nginx,访问主机公网ip就能打开nginx页面,我想我暂时不需要nginx,就把nginx关了。

nginx -s stop
nginx -s quit

验证是否关闭成功,就是再次访问主机的公网ip,显示无法访问才是对的。

MariaDB数据库的安装、建库并授权:

WordPress支持MySQL和MariaDB,毕竟它俩本是同根生。这里我选择了MariaDB,原因是新鲜感,语法上应该大差不差的。

apt install mariadb-server

安装完成后需要设置一下root用户的密码

mysqladmin -u root password 123@abc

然后就可以直接在终端里登录mariadb(目的就是建个库,建个用户,授权一下,我认为暂时没必要装phpmyadmin)参考https://wordpress.org/support/article/creating-database-for-wordpress/

mysql -u root -p

登录后执行下面语句就可以创建一个名叫mywordpress的数据库

CREATE DATABASE mywordpress;
然后用用下面的语句给一个名叫jack的用户授予这个mywordpress数据库的所有权限,用户jack的密码也在这里设置为abc@123
注意打完第一行就有一个回车
MariaDB> GRANT ALL PRIVILEGES ON mywordpress.* TO "jack"@"%" 
-> IDENTIFIED BY "abc@123";
然后刷新权限,然后退出
MariaDB> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.01 sec) 

MariaDB> EXIT
退出后用jack登录,查看是否拥有对应的数据库权限
mysql -u jack -p
MariaDB [(none)]> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mywordpress        |
+--------------------+
2 rows in set (0.000 sec)
如果能看到mywordpress数据库的话就说明就数据库安装环节已经完成了。

Apache的安装

apt install apache2

查看是否安装成功

apachetl -v

启动Apache服务

service httpd start

或者  /etc/init.d/apache2  start

然后直接用浏览器访问云主机公网ip能打开Apache2 Debian Default Page就是成功了。

如果本地能打开,外面打不开可能需要放行一下iptable

iptables  -P INPUT/OUTPUT/FORWARD  ACCEPT

最后记住Apache默认目录位于

/var/www/html

php环境安装

apt install php

apt install php-mysql

上面的第一行是安装php环境,如果不装,后面WordPress安装的时候会提示没有php环境。

第二行是安装php的mysql插件,如果不装,后面WordPress安装的时候会提示没有php的mysql插件。提示如下

Your PHP installation appears to be missing the MySQL extension which is required by WordPress.

装好以后需要重启Apache服务

service httpd restart

一开始我是不知道怎么安装php环境的,我是想偷懒直接装phpmyadmin的我想这个软件安装的过程中一定会把php和php-mysql环境都装好的,然而Debian10的源里没有居然没有包含phpmyadmin,如果是Ubuntu的我觉得可以一试。

 

WordPress安装

最后终于来到本篇文章主角的安装。参考文档:https://wordpress.org/support/article/how-to-install-wordpress/#step-3-set-up-wp-config-php

拉取WordPress的最新版,然后解压

wget https://wordpress.org/latest.tar.gz
tar -xzvf latest.tar.gz

然后把解压后的wordpress文件夹移动到Apache的主目录下

mv wordpress /var/www/html/

再重启一下Apache服务我们就可以打开浏览器访问

http://公网ip/wordpress/wp-admin/install.php

开始轻松愉快的一键安装了。安装无非就是输入一下之前在数据库里创建的数据库名称mywordpress,数据库用户名是jack,密码abc@123,数据库地址是localhost,最后一项默认就可以了。

然后点击提交。这个时候就遇到了最后一个问题:

WordPress抱歉,我不能写入wp-config.php文件

Unable to write to wp-config.php file.

You can create the wp-config.php file manually and paste the following text into it.

网上搜到的解决方案大多都是手工吧那段代码复制,然后手工建一个wp-config.php文件到wordpress所在主目录,还说要要注意在文件最后添加 ?>

我看了以后,就是不想弄。wordpress这么优雅的安装,最后临门一脚你非得整一个手工编辑php配置文件。这让我感觉味道不对。后来在Stack Overflow搜到了解决方案:

For nginx users, the default user is www-data, so we need to grant write permissions to the www-data user:

chown -R www-data wordpress

改一下给www-datra用户改一下wordpress主目录的权限,看起来还是和nginx有关系的。

然后再次打开http://公网ip/wordpress/wp-admin/install.php 这个安装页面再输入一边数据库配置信息提交就大功告成了。最后可以进到wordpress目录下面去看wp-config.php这个文本文件最后到底有没有?>

因为我不懂世界上最好的语言,我只是推测现在的版本有没有 ?>都无关紧要了吧。

然后wordpress就开始然你输入属于wordpress的新建用户信息了,开启属于自己的wp博客旅程。

posted @ 2022-04-21 20:03  仰望星空的耕田人  阅读(103)  评论(0编辑  收藏  举报