[教程]利用闲置笔记本电脑做服务器

服务器其实就是计算机的一种,它比普通计算机运行更快、负载更高、价格更贵。服务器在网络中为其它客户机(如PC机、智能手机、ATM等终端甚至是火车系统等大型设备)提供计算或者应用服务。服务器具有高速的CPU运算能力、长时间的可靠运行、强大的I/O外部数据吞吐能力以及更好的扩展性。根据服务器所提供的服务,一般来说服务器都具备承担响应服务请求、承担服务、保障服务的能力。服务器作为电子设备,其内部的结构十分的复杂,但与普通的计算机内部结构相差不大。

以下可帮助你利用闲置电脑制作一个简易的服务器,搭建家庭数字中心。

搭建PHP环境

选用 PHP 而非其他编程语言的理由为:

  • 有关 PHP 的源码非常多,且 PHP 好学,学会后很容易修改自用。
  • PHP 的环境配置相对简单,可以一键可以配置,便捷且不易出错。

新手最好使用 PHPstudy,安装 Apache 作为服务器环境。

在搜索引擎上搜索【PHPstudy】,然后进入官网选择 Windows 版本下载安装即可。

打开Apache服务

和常规软件的安装方法一样,下载并安装 PHPstudy。

安装完毕后,在 PHPstudy 的面板中找到 Apache,并启动。

固定IP地址并关闭防火墙

因为路由器可能会自动变更局域网内设备的IP地址(DHCP 服务器默认地址池120分钟更换一次 IP),所以我们作为服务器的电脑必须要固定 IP 地址,以免过些时候就访问不了了。

  • 任务栏右下角的网络图标处单击右键,选择【打开网络和 Internet 设置】
  • 选择高级网络设置 > 选择更改适配器选项。
  • 在你当前连接的网络上单击右键,选择“属性”
  • 双击【Internet 协议版本 4(TCP/IPv4)】

点击【使用下面的 IP 地址】并填写你需要的 IP 地址,一般以 192.168.1 开头,可以任意选择,只要不与网关和现有设备的 IP 地址冲突即可

这里以 192.168.1.106 为例,子网掩码填写 255.255.255.0;网关一般是 192.168.1.1。

关闭防火墙

Microsoft Defender 防火墙会禁止其他流经计算机网络端口的流量,以确保未被注意的数据包不会进入计算机并确保其安全。它还负责打开和关闭或侦听网络端口,要想你的电脑能被其他设备访问,必须关闭防火墙。(本机访问不需要)

此时电脑可以对外访问

此时电脑就可以对外访问了,那么快试试在浏览器中访问 http://192.168.1.106 吧!

如果一切正常,将会显示一个 “站点创建成功” 的页面!

配置 MySQL 数据库

MySQL 是一个开源的关系型数据库管理系统,常和 PHP 搭配使用。由瑞典 MySQL AB 公司开发,属于 Oracle 旗下产品。在 WEB 应用方面,MySQL 是最好、 最流行的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一。MySQL 所使用的 SQL 语言是用于访问数据库的最常用标准化语言。

  1. 在 PHPstudy 界面上启动 MySQL,可以看到有一个默认的 root 数据库。将密码修改为你能记住的密码。
  1. 在左侧点击【软件管理】>【网站程序】,找到 phpMyAdmin(一个可视化数据库管理软件)并选择【安装到 localhost】然后下载。随后在网站根目录下可以看到一个 phpMyAdmin4.8.x 的文件夹,将其修改为 sql-admin。
  2. 访问 http://192.168.1.106/sql-admin/ 并使用账号:root 和你刚刚设置的密码来登录。
  3. 进入后,点击上方导航栏【数据库】,输入你想要设置的数据库名,点击【创建】来新建一个数据库 。

此时你可以选择下载内容管理系统 WordPress,放在D盘 PHPstudy 安装目录的【PHPstudy_pro>WWW】文件夹下,然后访问:

http://192.168.1.106

填写你刚刚设置的数据库名和密码,安装并且找到你心仪的模板,你的博客/网站就做好了,即可进入你的网站。(此时只能内网访问

推荐好用的网络应用

  • 网盘和记事本: DZZoffice
  • 视频媒体网站:Emby,可以管理你的电影,可以自动下载电影海报和封面。
  • 图库:Chevereto 图床。可以把你的图片上传入服务器电脑,方便管理,并且可以获取图片 url 添加进博客中。
  • 文件管理:可道云
  • 视频,电影,音乐及图片:Emby
  • 若有其他推荐,欢迎在评论区指出。

如何管理这台电脑

  1. 如果对在线程度要求不高,就需要时开机,你的电脑远程连接服务器 IP 地址 (192.168.1.106, 查看下方👇教程开启),即可远程控制,不用时可以关机。如果想远程开机,有多种方式,例如使用远程控制电源。可以自己选择喜欢的方式实现。
  2. 若要实现域名功能,请将系统改为 Windows service 2019,并安装 DNS 服务器,在里面可以配置域名。
  3. 用花生壳可以解决外网访问不了的问题,并且比较安全,不用担心被攻击。
  4. 闲置电脑做成服务器是个很好的利用方法,一方面你可以学到网站开发,如果想学的话甚至可以学会 CSS,JavaScriptcss,HTML,PHP 进而学习其他语言。另一方面也很好的实现了文件的管理。
  5. 更多功能可以自己探索着玩儿~

使用域名访问

到这一步,说明你对内部数据中心的要求更高了。那么请按照以下操作实现域名访问。

  1. 将电脑系统改为最新的 Windows Server 2019 系统(下方下载)
  2. 打开【服务器管理器】,依次点击【添加角色和功能>基于角色和基于功能的安装>选择服务器>DNS服务器>默认下一步进行安装】
  3. 安装完毕。在任务栏搜索框搜索DNS,并将其添加到开始屏幕,便于以后访问。启动DNS服务器,在“DNS管理器”中选择“正向查找区域”,右键选择“新建正向查找区域”,
  4. 新建一个名为“com”的区域(建议改成与外网不重合的顶级域,以免影响外部网络的访问。这里示例用的是com,以后添加域名形式就是 ***.com的形式。)
  5. 默认下一步直至建立完毕。
  6. 新建主机,填入你的域名(任意)和IP地址(服务器IP)
  7. 在路由器管理后台(一般为192.168.1.1)>DHCP 服务器,将首选 DNS 更改为你的服务器 IP 地址。
  8. 此时就可以使用域名访问网站了。
Windows Server 2019系统镜像下载地址:(百度网盘)
https://go.fuyeor.com/?linkid=34.DOCS-DOWN 提取码: ugdk

一台电脑建立多个网站

你的需求慢慢在变大。现在,你可能有了很多个网站,而且是通过域名访问。但是只能是类似 http://fuyeor.com:91 这种带端口号的方式。如何用一台主机配置多个网站、多个域名呢?这需要用到反向代理。

反向代理是什么

首先,我们要搞清楚什么是反向代理。那么何为反向代理,要实现什么功能呢?

反向代理服务器位于用户与目标服务器之间,但是对于用户而言,反向代理服务器就相当于目标服务器,即用户直接访问反向代理服务器就可以获得目标服务器的资源。同时,用户不需要知道目标服务器的地址,也无须在用户端作任何设定。


假定我们买了一个域名,拥有无限二级域名。但有且仅有一台服务器,但是想要建立多个不同的网站。而那些网址都要求不同的端口(主目录),既每个网站占用一个端口。这时,我们将不得不戴上端口号去访问这些网站。

例如: www.fuyeor.com:8000、www.fuyeor.com:8090、www.fuyeor.com:92

这样既不美观又不方便/整齐划一。

而用反向代理即可解决这个问题。由于网上的错误实例和代码太多,因此我们做了一篇正确的文档。请访问下面文章,使用文章内的代码完成配置。

Apache 配置反向代理教程

实现多域名

在DNS管理器新建主机,填入你的域名(任意)和IP地址(服务器IP),如果你要使用二级域名就填入 xx(二级域名).yourdomain.com 和IP地址。此处的IP地址全部指向本机。

点击以下文章学习关于DNS的知识。

公网访问

公网访问目前有两种途径:

  1. 向运营商申请固定的公网 IP(可以说做监控用),就能通过 IP+端口访问。
  2. 买云服务器,然后备案。如果想通过域名访问,就必须备案。

云服务器

目前市面上最大的服务器厂商有五家:阿里云腾讯云华为云Microsoft Azure (微软云服务)、AWS ( Amazon Website Services,亚马逊云服务)。大家可点击对应链接去官方活动页面选择自己需要的服务器。

根据我们的使用情况来看,腾讯云客服支持与工单处理很即时,而阿里云的工单到夜晚~凌晨回复速度极慢,解决问题的能力不强。

其他可查看以下文章,来选择适合你的云服务器。

默认图片
Marugu Fuyeor
欢迎来到复网 - 教程与解决方案 - Marugu Fuyeor
文章: 95

3 评论

  1. 可以发个关于 CDN 的教程文章吗?通俗地讲述一下 CDN 是什么。
    另外“将我的姓名, 邮箱地址和网站信息保存在此浏览器中“ ”同意隐私政策”
    复选框背景颜色和网站背景一样了,看不清楚。

    • CDN 的中文全称是《内容分发网络》,一个网站页面通常都有很多资源比如视频,样式表,脚本,音频,HTML等等,
      访客全部请求原网站获取资源的话,原网站服务器压力会很大,
      于是网站就配置所谓 CDN 加速,将原网站域名使用 CNAME 记录解析到 CDN 的服务器上。
      就会缓存 (相当于复制, 镜像一个原网站) 的内容到全国各地的服务器上, 这些缓存服务器叫就叫做 CDN 节点。
      请求原网站时,CDN 就会根据访客的位置, 将域名劫持到访客附近的服务器上,速度就会变快。
      通常这些缓存资源有一定的时效,比如60天后过期,如果 CDN 没了,这些缓存资源在失效后就无法访问了,
      但是域名却还解析到了附近服务器,但服务器上没有这些资源,就返回404状态码 (就是找不到对应资源的意思)

留下评论