第 7章 WWW 网站服务器

建站套件 - PHP/MySQL/Web

提供 PHP/CGI 运行环境、MySQL 服务器、Web 服务器运行环境。

依赖条件:需要额外的存储空间,请参考 磁盘管理


安装模块

应用-》模块-》检查更新,找到 “lnmp“ 模块,点击安装。

服务配置

应用-》MySQL/PHP/HTTP 服务:

配置上传密码:

上传网站数据

提供 SFTP 安全方式上传,Windows 下建议使用开源客户端 WinSCP

站点 SFTP 上传账号 www,请先在 “系统”-》“登录管理”-》SSH 登录,开启SSH 远程登录服务。

连接参数:

sftp://www@<服务器IP>:2222

弹出存储SSH密钥警告,点击确认继续:

将本机文件拖到右边www目录下即可,www目录为网站根目录。

index.html 文件内容样例:

<html>
<head>
<meta charset="utf-8">
</head>
<body>
hello, 这是网站的测试页面!
</body>
</html>

MySQL 数据库

请使用127.0.0.1进行数据库连接, MySQL 初始root密码为 secret。

如果需要从外部连接MyQSL,修改MySQL服务参数-》监听IP为所有网络接口:

客户端连接(以 MySQL Workbench 为例):

HTTP 反向代理

通过HTTP反向代理将三层交换机下的Web服务器透传到 WAN 口,让Internet可以访问。

注:三层转发的网络环境下,端口映射无法做到,因为目标服务器的网关是交换机,而不是指向路由器。

网络拓扑

开启HTTP反向代理

这里创建了2条反向代理记录,访问路由的80或2080时,将请求反向代理到内网的Web服务器上。

最终效果:

访问 http://119.62.X.Xhttp://119.62.X.X:2080/ 时,相当于访问内网的 http://10.0.103.254/

 

自定义Nginx规则-

  1. 访问域名A时,自动重定向到域名B

路径不变,只改变域名

forum.test.com 和 bbs.test.com 2个域名指向www根目录下的bbs子目录。

https://forum.test.com/page/test.htmlhttps://bbs.test.com/page/test.html

if ($host = 'forum.test.com') {
      rewrite ^/(.*) https://bbs.test.com/$1 redirect;
}