专栏名称: Java基基
一个苦练基本功的 Java 公众号,所以取名 Java 基基
目录
相关文章推荐
AIGC开放社区  ·  OpenAI放王炸,Sora无限使用!3大新 ... ·  2 天前  
AIGC开放社区  ·  OpenAI放王炸,Sora无限使用!3大新 ... ·  2 天前  
质量与认证  ·  新版《检验机构认可规则》发布实施(附全文) ·  3 天前  
质量与认证  ·  新版《检验机构认可规则》发布实施(附全文) ·  3 天前  
阿昆的科研日常  ·  审稿编辑:查重率过高,整改后重新上传 ·  4 天前  
阿昆的科研日常  ·  审稿编辑:查重率过高,整改后重新上传 ·  4 天前  
真故研究室  ·  洗剪吹太贵,倒逼年轻人出国理发 ·  4 天前  
真故研究室  ·  洗剪吹太贵,倒逼年轻人出国理发 ·  4 天前  
李继刚  ·  共振式 ·  6 天前  
51好读  ›  专栏  ›  Java基基

拿自己的旧电脑搭建了个服务器!

Java基基  · 公众号  · 科技自媒体 互联网安全  · 2024-12-08 16:27

正文

👉 这是一个或许对你有用的社群

🐱 一对一交流/面试小册/简历优化/求职解惑,欢迎加入芋道快速开发平台知识星球。下面是星球提供的部分资料: 

👉这是一个或许对你有用的开源项目

国产 Star 破 10w+ 的开源项目,前端包括管理后台 + 微信小程序,后端支持单体和微服务架构。

功能涵盖 RBAC 权限、SaaS 多租户、数据权限、商城、支付、工作流、大屏报表、微信公众号等等功能:

  • Boot 仓库:https://gitee.com/zhijiantianya/ruoyi-vue-pro
  • Cloud 仓库:https://gitee.com/zhijiantianya/yudao-cloud
  • 视频教程:https://doc.iocoder.cn
【国内首批】支持 JDK 21 + SpringBoot 3.2.2、JDK 8 + Spring Boot 2.7.18 双版本 

来源:blog.csdn.net/Lucas0623
/article/details/126584307


最近总是想搭建自己的网站,奈何皮夹里空空如也,服务器也租不起,更别说域名了。于是我就寻思能否自己搭建个服务器,还不要钱呢?

还真行!!!

经过几天的冲浪,我发现有两个免费的建站工具:Apache和Nginx

由于两个工具建站方法差不多,所以我就以Nginx为例

1.安装Nginx

首先前往Nginx官网(nginx.org)进行下载,也可以直接用我提供的链接下载1.23版本:http://nginx.org/download/nginx-1.23.1.zip

安装完之后解压,然后你会看到如下目录:

由于Nginx的功能很多,而我们今天只是搭建个服务器,所以只会用到其中的一部分。

基于 Spring Boot + MyBatis Plus + Vue & Element 实现的后台管理系统 + 用户小程序,支持 RBAC 动态权限、多租户、数据权限、工作流、三方登录、支付、短信、商城等功能

  • 项目地址:https://github.com/YunaiV/ruoyi-vue-pro
  • 视频教程:https://doc.iocoder.cn/video/

2.配置Nginx

进入conf文件夹,打开nginx.conf文件进行编辑,里面的配置很多,我对其中一些重要的配置进行了说明(前面有“#”的表示并没有真正写入配置,若要加入,只需去掉“#”):

基于 Spring Cloud Alibaba + Gateway + Nacos + RocketMQ + Vue & Element 实现的后台管理系统 + 用户小程序,支持 RBAC 动态权限、多租户、数据权限、工作流、三方登录、支付、短信、商城等功能

  • 项目地址:https://github.com/YunaiV/yudao-cloud
  • 视频教程:https://doc.iocoder.cn/video/

3.启动Nginx服务

配置完Nginx后,返回Nginx根目录,找到nginx.exe,双击运行它,你会看到有个小黑框一闪而过,这说明Nginx已经成功启动!你可以打开浏览器,输入:虚拟主机名称:监听的端口(刚刚的配置),回车,就会看到如下网页:

恭喜你,已经成功搭建了Nginx服务器!

4.为你的网站添加文件

光开启了服务可还不够,如果别人看到你的网站只有干巴巴的一段文字,有什么用?接下来,进入刚刚配置的文件夹位置,在该文件夹下新建一个txt,打开后输入这段代码:

html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Documenttitle>
    <style>
        * {
            margin0;
            padding0;
        }
        html {
            height100%;
        }
        body {
            height100%;
        }
        .container {
            height100%;
            background-imagelinear-gradient(to right, #fbc2eb, #a6c1ee);
        }
        .login-wrapper {
            background-color#fff;
            width358px;
            height588px;
            border-radius15px;
            padding0 50px;
            position: relative;
            left50%;
            top50%;
            transformtranslate(-50%, -50%);
        }
        .header {
            font-size38px;
            font-weight: bold;
            text-align: center;
            line-height200px;
        }
        .input-item {
            display: block;
            width100%;
            margin-bottom20px;
            border0;
            padding10px;
            border-bottom1px solid rgb(128125125);
            font-size15px;
            outline: none;
        }
        .input-item:placeholder {
            text-transform: uppercase;
        }
        .btn {
            text-align: center;
            padding10px;
            width100%;
            margin-top40px;
            background-imagelinear-gradient(to right, #a6c1ee, #fbc2eb);
            color#fff;
        }
        .msg {
            text-align: center;
            line-height88px;
        }
        a {
            text-decoration-line: none;
            color#abc1ee;
        }
    
style>
head>
<body>
    <div class="container">
        <div class="login-wrapper">
            <div class="header">Logindiv>
            <div class="form-wrapper">
                <input type="text" name="username" placeholder="username" class="input-item">
                <input type="password" name="password" placeholder="password" class="input-item">
                <div class="btn">Logindiv>
            div>
            <div class="msg">
                Don't have account?
                <a href="#">Sign upa>
            div>
        div>
    div>
body>
html>

再将文件名改为index.html,保存,最后再次打开浏览器,输入虚拟主机名称:监听的端口(刚刚的配置),回车,你就会看见如下页面:

是不是非常好看?这个index.html其实是用HTML+CSS写出来的,感兴趣的同学可以去学习一下。

除了html文件,你还可以在该文件夹里放任何文件,如:图片,视频,压缩包等等。

5.内网穿透

服务器搭建完了,网页也有了,但其实除了跟你在同一个局域网下的人,都无法访问你的网站。

这里就要用到内网穿透了,所谓内网穿透,也即是局域网能够直接通过公网的ip去访问,极大的方便用户的日常远程的一些操作的使用。这里我建议大家使用飞鸽内网穿透,使用方法如下:

5.1 注册

进入飞鸽内网穿透官网,进行注册,这步就不多讲了。

5.2 开通隧道

注册好后,我们点击“开通隧道”选项,选择“免费节点”,有实力的也可以选贵的。

然后填写信息,其中前置域名可以自定,本地ip端口一定要设置成:你的内网ip:刚配置的端口号。

最后点击确认开通,就OK了,这样你就得到了免费域名+免费公网ip。

5.3 启动服务

点击此链接,根据电脑系统下载客户端。下载完后解压,一共有两个文件:傻瓜式运行点击我.vbs和npc.exe。

点击傻瓜式运行点击我.vbs,打开后会看见一个弹窗,让你填写指令。我们切回飞鸽官网,点击“隧道管理”,如下图:根据电脑系统选择指令,点击复制,然后切回刚才的弹窗,将指令输入进去,点击确定。

这样内网穿透就成功了!打开浏览器,输入刚才开通的隧道的访问地址(上图被抹掉的地方),回车,同样能开到之前编写的网页,就成功了。


欢迎加入我的知识星球,全面提升技术能力。

👉 加入方式,长按”或“扫描”下方二维码噢

星球的内容包括:项目实战、面试招聘、源码解析、学习路线。

文章有帮助的话,在看,转发吧。

谢谢支持哟 (*^__^*)