在ubuntu上搭建网页服务器apache +mysql +php +certbot +wordpress 使用https访问
本文最后更新于 450 天前,其中的信息可能已经有所发展或是发生改变。

在ubuntu上搭建网页服务器apache +mysql +php +certbot +wordpress 使用https访问。这是我的一次搭建经历,现在分享一下,给有需要的人。



先切到最高权限。

su

首先我先安装apache

先更新一下包源

apt -update

更新完了以后安装apache

apt install apache2

安装完成

接下来安装php

apt install php

安装完成php后还要再安装一些php模组

apt install php-fpm

apt install php-mysql

接下来便是将wordpress导入到服务器根目录

wget https://cn.wordpress.org/latest-zh_CN.zip

再安装unzip以来解压这个包

apt install unzip

解压

upzip latest-zh_CN.zip

这个命令会在当前目录生成一个叫做wordpress的目录

复制文件

cp -R wordpress /var/www/html/

复制完以后

接下来操作mysql新建数一个账号以及据库

mysql -u root

创建用户

CREATE USER 'username'@'localhost' IDENTIFIED BY 'passwd';

创建数据库
CREATE DATABASE wordpressblog;

给用户权限
grant all privileges on wordpressblog.* to username@localhost identified by 'passwd';

请注意!操作mysql的语句后面一定要有分号,一定要注意!!

接下来安装certbot获取证书。 注意此步骤需要有自己的域名,假如只有IP并不可使用https链接。无需该步骤,直接前往浏览器输入服务器ip安装wordpress

apt install snapd

sudo snap install core

sudo snap refresh core

snap install –classic certbot

ln -s /snap/bin/certbot /usr/bin/certbot

certbot

接下来按照屏幕提示来操作

操作如果不出错则站点已经开启了https

注明:certbot的证书有效期只90天,到期需要续期,当然也可以自己写一个脚本来续期,但这是后话,下面是如何手动续期

续期命令:

certbot renew

注意 在到期前30天之内才能续期,否则certbot会判断没有必要进行续期。效果如下图

certbot报错未到13天
certbot报错未到13天

假如配置没有问题的话,那么就可以去安装wordpress去了

前往浏览器输入服务器网址,按照屏幕提示来操作

后记

安装完wordpress后,假如出现安装删除插件主题时候询问ftp账号密码,按照如下过程解决

chmod -R 777 /var/www/html/

降低权限。然后再wordpress目录下的wp-config.php末尾加入如下语句:

define(“FS_METHOD”,”direct”);
define(“FS_CHMOD_DIR”, 0777);
define(“FS_CHMOD_FILE”, 0777);

保存

重启apache

systemctl restart apache2.service

操作完成

如果出现文章发布不了的情况,在wordpress的控制台中

选择设置/固定链接 选择朴素(只要链接里没有中文即可)

保存,搭建完成

后话(其实一开始我是使用的百度云的lamp包(基于centos)来搭建的,但是在用certbot创建ssl证书的时候出了一些小问题,百度云的lamp包不是默认状态下的安装,certbot并不能自动对其签名并开启https,后来手动挂载了证书发现apche 还有vhost的问题,开启https后http访问的内容跟https访问的内容不一样,可是我修改文件没有效果,网上也没有太对对此有帮助的文章,按照教程也没有效果,(本人菜鸟一枚,望大佬指教)所以便采用ubuntu,使用apt默安装,这样certbot就可以自动开启https了)

本博客所有文章除特别声明外,均采用 CC BY-NC-SA 3.0 许可协议,记得载明出处,(期待)。 内容有问题?请点此跟我反馈
上一篇
下一篇