当前位置:   article > 正文

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

wordpress公网访问

曾经在阿里云的服务器上开了个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
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

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

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

sudo apt-get -y install phpmyadmin 
  • 1

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

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

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

sudo mysql –u root
  • 1

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

CREATE DATABASE wordpressDB;
CREATE USER 'username'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON *.* TO 'username'@'localhost';
FLUSH PRIVILEGES;
exit;
  • 1
  • 2
  • 3
  • 4
  • 5

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
  • 1
  • 2
  • 3

就完成了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 {} \;
  • 1
  • 2
  • 3

内网穿透

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

服务端

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

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

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

[common]
bindPort = 7000
vhost_http_port = 8000
vhost_https_port = 8001
dashboard_port = 7500
dashboard_user = xxx
dashboard_pwd = XXXX
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

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

./frps -c frps.toml &
  • 1

在这里插入图片描述
配置下阿里云的安全组,把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 "
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

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

./frpc -c frpc.ini &
  • 1

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

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

部分问题记录

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

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

修改站点url后wordpress无法登陆

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

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/繁依Fanyi0/article/detail/645505
推荐阅读
相关标签
  

闽ICP备14008679号