菜鸟科技网

自己做的网站如何访问?

要访问自己做的网站,需要根据网站的部署环境(本地开发环境或线上服务器)选择不同的方法,同时涉及网络配置、域名解析、服务器设置等多个环节,以下是详细的步骤和注意事项,涵盖从本地开发到线上发布的全流程,帮助顺利实现网站访问。

自己做的网站如何访问?-图1
(图片来源网络,侵删)

本地开发环境下的网站访问

在网站开发阶段,通常先在本地计算机上搭建开发环境,此时访问网站无需公网IP,主要通过本地地址或局域网地址实现。

本地服务器启动后的直接访问

使用本地开发工具(如XAMPP、WAMP、MAMP、Docker、VS Code Live Server等)搭建环境后,工具会启动一个本地服务器(如Apache、Nginx、Node.js),默认监听本地地址(127.0.0.1或localhost)和特定端口(如80、3000、8080等)。

  • 访问步骤
    打开浏览器,在地址栏输入 http://localhost:端口号http://127.0.0.1:端口号,使用Node.js的Express框架默认启动3000端口,则输入 http://localhost:3000;若使用XAMPP的Apache默认80端口,可直接输入 http://localhost(端口号80可省略)。
  • 注意事项
    • 确保开发工具已启动服务器,且项目文件位于服务器指定的根目录(如XAMPP的htdocs文件夹、VS Code的工作区)。
    • 若端口被占用(如其他程序已占用80端口),需在开发工具中修改端口号(如改为8080),访问时同步更新地址栏端口号。
    • 本地访问仅限当前计算机,其他设备无法直接访问(除非配置局域网共享,见下文)。

局域网内访问本地网站(多设备测试)

若需在同一局域网(如家庭、办公室网络)的其他设备(手机、平板、另一台电脑)上访问本地网站,需将本地服务器暴露给局域网,步骤如下:

  • 获取本地IP地址
    Windows系统:打开命令提示符,输入 ipconfig 查找“IPv4地址”(如192.168.1.100);macOS/Linux:打开终端,输入 ifconfigip addr 查找“inet”地址(如192.168.1.101)。
  • 配置服务器监听局域网IP
    在开发工具的配置文件中,将监听地址从 0.0.1 改为 0.0.0(表示监听所有网络接口)。
    • Node.js(Express):app.listen(3000, '0.0.0.0')
    • Python(Flask):app.run(host='0.0.0.0', port=5000)
    • Apache/XAMPP:修改 httpd.conf 文件中 Listen 127.0.0.1:80Listen 0.0.0.0:80 或直接 Listen 80
  • 局域网设备访问
    其他设备在浏览器中输入 http://本地IP地址:端口号(如 http://192.168.1.100:3000),若端口号为80,可省略端口号(如 http://192.168.1.100)。
  • 注意事项
    • 确保本地计算机和访问设备处于同一局域网(同一WiFi或有线连接)。
    • 部分路由器可能阻止外部设备访问本地服务,需在路由器设置中“端口转发”或“DMZ主机”(将指定端口映射到本地IP,或直接将本地IP设为DMZ主机,存在安全风险,谨慎使用)。
    • 局域网访问仍无法通过公网(如外部网络)访问,仅限局域网内设备。

线上服务器环境下的网站访问

网站开发完成后,需部署到线上服务器(云服务器、虚拟主机、静态托管服务等)才能通过公网访问,核心步骤包括服务器配置、域名解析、SSL证书部署等。

自己做的网站如何访问?-图2
(图片来源网络,侵删)

获取服务器并部署网站

  • 选择服务器类型
    • 云服务器:如阿里云ECS、腾讯云CVM、AWS EC2,需自行配置服务器环境(安装Web服务器、数据库等),适合动态网站(如PHP、Node.js、Python应用)。
    • 虚拟主机:如万网、西部数据的虚拟主机,环境由服务商预配置,适合静态网站或简单动态网站(如WordPress)。
    • 静态托管服务:如Vercel、Netlify、GitHub Pages,适合纯静态网站(HTML、CSS、JS),无需配置服务器,自动部署。
  • 上传网站文件
    通过FTP/SFTP工具(如FileZilla、WinSCP)上传网站文件到服务器指定目录(如云服务器的 /var/www/html、虚拟主机的 public_html、静态托管的 dist 目录)。
  • 配置服务器环境
    • 云服务器:需安装Web服务器(Apache/Nginx)、数据库(MySQL/PostgreSQL)及运行时环境(如PHP、Node.js),在Ubuntu上安装Nginx:sudo apt update && sudo apt install nginx,然后将网站文件放入 /var/www/html,修改Nginx配置文件 /etc/nginx/sites-available/default,设置根目录和服务器名称。
    • 虚拟主机:服务商通常提供控制台,可直接上传文件或通过一键部署(如WordPress安装)。
    • 静态托管:通过Git推送代码到仓库(如GitHub、GitLab),服务商自动构建并部署,生成访问地址(如 https://yourname.vercel.app)。

绑定域名(可选但推荐)

通过IP地址访问网站(如 http://123.45.67.89)不便于记忆,需绑定域名(如 www.example.com),步骤如下:

  • 购买域名:在域名注册商(如阿里云万网、腾讯云DNSPod、GoDaddy)购买域名。
  • 配置DNS解析
    登录域名管理后台,添加DNS记录,将域名指向服务器IP或云服务商提供的CNAME地址,常见记录类型:
    | 记录类型 | 说明 | 示例 |
    |----------|------|------|
    | A记录 | 将域名指向IPv4地址 | 主机记录: 或 www,记录值:服务器IP(如123.45.67.89) |
    | CNAME记录 | 将域名指向另一个域名(常用于云服务商提供的二级域名) | 主机记录:www,记录值:yourdomain.cloudprovider.com |
    | AAAA记录 | 将域名指向IPv6地址(如服务器支持IPv6) | 记录值:IPv6地址 |
    解析生效时间通常为几分钟至几小时(全球DNS缓存差异)。
  • 服务器配置虚拟主机
    在Web服务器(Nginx/Apache)中配置虚拟主机,绑定域名,例如Nginx配置:
    server {
        listen 80;
        server_name www.example.com example.com;
        root /var/www/html;
        index index.html index.htm;
    }

    配置完成后重启Nginx:sudo systemctl restart nginx

通过公网IP访问(未绑定域名时)

若未绑定域名,可直接通过服务器公网IP访问,获取公网IP的方法:

  • 云服务器服务商控制台查看(如阿里云ECS“实例列表”页)。
  • 在本地命令提示符/终端输入 curl ifconfig.mecurl ipinfo.io(需安装curl工具)。
    访问时输入 http://公网IP(如 http://123.45.67.89),若端口号非80(如云服务器安全组默认开放80端口,其他端口需手动开放),需加端口号(如 http://123.45.67.89:8080)。

配置SSL证书实现HTTPS访问

HTTPS通过加密传输保障数据安全,现代浏览器已强制要求网站启用HTTPS,获取SSL证书并配置的步骤:

自己做的网站如何访问?-图3
(图片来源网络,侵删)
  • 获取免费SSL证书
    • Let's Encrypt:免费、自动化的证书颁发机构,可通过Certbot工具自动申请和部署(支持Nginx/Apache等多种服务器)。
    • 云服务商:如阿里云、腾讯云提供免费SSL证书(1年有效期),可在控制台申请并下载。
  • 部署SSL证书
    • Certbot自动部署(以Ubuntu+Nginx为例):
      sudo apt install certbot python3-certbot-nginx
      sudo certbot --nginx -d www.example.com -d example.com

      按提示完成邮箱验证和条款同意,Certbot会自动修改Nginx配置,启用HTTPS(监听443端口,配置证书路径)。

    • 手动部署:将证书文件(如 .pem.key)上传到服务器,修改Nginx配置:
      server {
          listen 443 ssl;
          server_name www.example.com example.com;
          root /var/www/html;
          index index.html;
          ssl_certificate /path/to/fullchain.pem;
          ssl_certificate_key /path/to/privkey.pem;
      }
      # 强制HTTP跳转HTTPS(可选)
      server {
          listen 80;
          server_name www.example.com example.com;
          return 301 https://$server_name$request_uri;
      }

      重启Nginx使配置生效。

  • 验证HTTPS:浏览器输入 https://域名,查看地址栏是否有锁形标志(表示证书有效),若证书未生效,检查DNS解析是否完成、服务器防火墙/安全组是否开放443端口。

常见问题排查

若无法访问网站,可按以下步骤排查:

  1. 检查服务器状态:云服务器是否运行(控制台查看状态)、Web服务是否启动(systemctl status nginx/systemctl status apache2)。
  2. 检查端口开放:服务器安全组(云服务器)或本地防火墙是否开放访问端口(如80、443、3000),可通过 telnet IP 端口号 测试(如 telnet 123.45.67.89 80)。
  3. 检查文件路径:网站文件是否上传到正确目录(如Nginx的 root 指向路径),是否存在默认首页文件(如 index.htmlindex.php)。
  4. 检查域名解析ping 域名 查看是否指向服务器IP(如 ping www.example.com 显示IP为123.45.67.89),若解析错误需修改DNS记录。
  5. 检查浏览器缓存:尝试无痕模式访问,或按 Ctrl+F5 强制刷新缓存。

相关问答FAQs

问题1:本地开发的网站如何让外网(公网)访问?
解答:要让本地网站被公网访问,需将本地服务器暴露到公网,核心步骤包括:

  1. 获取公网IP:确保本地网络有公网IP(家庭宽带通常为动态IP,企业宽带可能为静态IP);若无,可使用“内网穿透”工具(如花生壳、ngrok、frp)。
  2. 配置端口转发:在路由器设置中添加端口转发规则,将外部端口(如8080)映射到本地IP的内部端口(如3000)。
  3. 动态IP解析(可选):若公网IP为动态,可使用DDNS(动态域名解析)服务(如花生壳、阿里云DDNS),将域名动态指向当前公网IP。
  4. 安全注意事项:直接暴露本地服务器存在安全风险(如被攻击),建议仅用于临时测试,长期部署应使用云服务器。

问题2:网站部署到服务器后,访问时显示“连接超时”或“无法访问该网站”怎么办?
解答:此类问题通常为网络或服务配置问题,可按以下步骤排查:

  1. 检查服务器状态:登录云服务器控制台,确认服务器处于“运行中”状态;SSH连接服务器,检查Web服务进程是否存在(如 ps aux | grep nginx)。
  2. 检查端口开放:在服务器安全组设置中,确认已开放网站访问端口(如80、443);本地测试端口是否开放(telnet 服务器IP 端口号,若未安装telnet,Windows可通过“启用或关闭Windows功能”安装)。
  3. 检查防火墙规则:服务器系统防火墙(如iptables、firewalld)可能阻止端口访问,需添加放行规则(如Ubuntu:sudo ufw allow 80;CentOS:firewall-cmd --permanent --add-port=80/tcp && firewall-cmd --reload)。
  4. 检查网站服务配置:确认Web服务器配置的根目录路径正确,网站文件存在(如 /var/www/html/index.html),且权限设置正确(chmod -R 755 /var/www/html)。
  5. 检查域名解析:若通过域名访问,确认DNS解析已生效(ping 域名 查看IP是否正确),且域名服务器配置正确(如A记录指向服务器IP)。
    若以上步骤均正常,可尝试重启Web服务或服务器后再次访问。
分享:
扫描分享到社交APP
上一篇
下一篇