VmWare虚拟机开启wordpress服务并通过服务器内网穿透访问

avatar
作者
筋斗云
阅读量:1

目录

曾经在阿里云的服务器上开了个wordpress服务作为个人博客,后来因为域名和服务器续费变贵没有继续续费,所以把wordpress备份后一直存在本地。
最近阿里云服务器打折,我准备重新折腾一下,但又因为折扣时间不长,所以考虑不直接在阿里云上面搭建wordpress服务。
那么最终考虑的方案就是在阿里云上面配置frpc内网穿透,在本地的虚拟机上配置wordpress,这样工程迁移起来就会非常方便,对服务器要求也不高。

Ubuntu安装LAMP环境

LAMP即为Linux、Apache、Mysql、Php,是一套搭建web服务器的基础框架,为使用wordpress的前置条件。
Ubuntu18.04全新系统,更新一波。
在这里插入图片描述
首先安装apache和mysql。

sudo apt-get -y install apache2 sudo apt-get -y install mysql-server sudo apt-get install -y php  sudo apt-get -y install php-mysql  sudo apt-get -y install libapache2-mod-php  sudo service mysql restart sudo systemctl restart apache2.service 

安装完成后,在虚拟机的网页端访问127.0.0.1,应该就能访问到apache的默认页面。
apache2默认页面

下面安装phpmyadmin,phpmyadmin是一款在web端管理mysql的软件,操作数据库简单快捷,很推荐安装。

sudo apt-get -y install phpmyadmin  

安装phpmyadmin后,在html目录下创建一个软链接,即可直接在网页上访问。

sudo ln -s /usr/share/phpmyadmin /var/www/html/phpmyadmin 

在网页端访问127.0.0.1/phpmyadmin,显示如下。
phpmyadmin登录界面
当前phpmyadmin是无法进入的,phpmyadmin的登录用户名和密码即为mysql的用户名和密码,需要先在mysql中创建用户才可登录。
在终端输入

sudo mysql –u root 

进入mysql控制台,输入以下命令创建用户名和密码(注意,命令后面有;号)

CREATE DATABASE wordpressDB; CREATE USER 'username'@'localhost' IDENTIFIED BY 'password'; GRANT ALL PRIVILEGES ON *.* TO 'username'@'localhost'; FLUSH PRIVILEGES; exit; 

mysql创建数据库和用户
使用刚刚创建的用户名和密码登录phpmyadmin,即可看到刚才创建的数据库。
phpmyadmin管理数据库

Ubuntu安装wordpress

到Wordpress官网下载发布版本
https://wordpress.org/download/releases/
也可以下中文版,非常方便
https://cn.wordpress.org/download/releases/

sudo chmod -R 777 /var/www/html cp /home/echain/wordpress-6.3.2.tar.gz /var/www/html/ && cd /var/www/html tar –xvf ./wordpress-6.3.2.tar.gz 

就完成了wordpress的安装,在网页端访问127.0.0.1/wordpress,显示如下,开始wordpress的配置。

wordpress初始化页面
配置一下mysql的用户名和数据库名
选择mysql刚刚创建的数据库和用户
如果wordpress没有写磁盘权限的话,会出现这个提示,只需要把框里的内容复制下来,创建一个wp-config.php文件,放到wordpress根目录(默认/var/www/html/wordpress)就可以啦。
wordpress无法创建wp-config.php
点击 Run the installation,即可完成wordpress安装。
如果上面没有写权限的话,安装插件也大概率会出现下面的提示,其实也是因为wordpress没法保存插件,执行一下下面的命令即可解决。
安装插件报错

sudo chown -R www-data:www-data /var/www sudo find /var/www/ -type d -exec chmod 755 {} \; sudo find /var/www/ -type f -exec chmod 644 {} \; 

内网穿透

使用开源软件frp进行内网穿透,可以购买一个带公网ip的服务器,在上面运行frps(服务端),然后在虚拟机上运行frpc(客户端),即可进行内网穿透,下面为教程。

服务端

在这里插入图片描述
首先输入

wget https://github.com/fatedier/frp/releases/download/v0.53.2/frp_0.53.2_linux_amd64.tar.gz 

下载frp,或者自己下载完之后上传到服务器,无所谓啦。
然后创建frps.toml文件,按照下文配置:

[common] bindPort = 7000 vhost_http_port = 8000 vhost_https_port = 8001 dashboard_port = 7500 dashboard_user = xxx dashboard_pwd = XXXX 

frps配置
bindPort即为客户端(内网侧)需要填写的端口号,vhost_http_port为外部访问需要配置的端口号,dashboard_port为frps管理页面的端口号,user和pwd即为登陆dashboard需要的用户名和密码啦。
启动frps,如果需要后台不杀进程可以加nohup参数

./frps -c frps.toml & 

在这里插入图片描述
配置下阿里云的安全组,把dashboard对应的端口放开,此时访问frp的dashboard,应该ok,同理再放开8000和8001端口,保证客户端的正常访问。
安全组配置
访问frps服务端dashboard

客户端

同理,在上面的链接里下载frp,服务端和客户端是存在一个压缩包内的,很方便。
把同一个压缩包放到虚拟机上解压即可。然后同样配置frpc.ini。server_port即为服务端配置的bind_port,admin_port和user/pwd为客户端的dashboard配置。

[common] server_addr = "服务器ip" server_port = 7000 tls_enable = true admin_addr = "127.0.0.1" admin_port = 1234 admin_user = xxx admin_pwd = xxx  [web] type = http local_port = 80 custom_domains = "服务器ip " 

在frpc客户端配置
同样启动frpc,

./frpc -c frpc.ini & 

此时如果frpc和frps连接正常,两侧的dashboard显示应如下:
在这里插入图片描述
在这里插入图片描述
配置完frpc后,由于wordpress侧还有相应的地址设置,所以要将wordpress设置中的wordpress地址和站点地址改为公网服务器的地址。
在这里插入图片描述

如果配置完后无法访问可以看问题记录,如何修改为原来的默认地址。
至此,配置全部完成,这样就可以通过公网ip访问到虚拟机的服务器啦。
在这里插入图片描述

部分问题记录

浏览器访问8000端口始终重定向到80端口

清空浏览器缓存,非frpc问题。

修改站点url后wordpress无法登陆

打开phpmyadmin,在mysql数据库中直接修改wordpress配置。
在这里插入图片描述

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!