Ubuntu Server 部署网页 (如果无域名 可局域网访问)

1. 准备环境

  • 安装 Ubuntu Server:确保你已经安装了 Ubuntu Server 操作系统。

  • 更新系统 :登录服务器后,首先更新软件包列表和升级系统:

    复制代码

    BASH

    sudo apt update && sudo apt upgrade -y


2. 安装必要的软件

根据你的需求选择安装以下软件:

2.1. 安装 Nginx(推荐)

Nginx 是一个高性能的 Web 服务器,适合静态网站或反向代理。

复制代码

BASH

sudo apt install nginx -y

启动 Nginx 服务并确保其运行:

复制代码

BASH

sudo systemctl start nginx sudo systemctl enable nginx

2.2. 安装 Apache(可选)

如果你更倾向于使用 Apache,可以安装:

复制代码

BASH

sudo apt install apache2 -y

启动 Apache 服务:

复制代码

BASH

sudo systemctl start apache2 sudo systemctl enable apache2

2.3. 安装 MySQL 或 MariaDB(可选)

如果你的网页应用需要数据库支持,可以安装 MySQL 或 MariaDB:

复制代码

BASH

sudo apt install mysql-server -y # MySQL # 或 sudo apt install mariadb-server -y # MariaDB

启动数据库服务:

复制代码

BASH

sudo systemctl start mysql sudo systemctl enable mysql

2.4. 安装 PHP(可选)

如果你的网站使用 PHP(如 WordPress),安装 PHP 和相关扩展:

复制代码

BASH

sudo apt install php libapache2-mod-php php-mysql -y # 对于 Apache # 或 sudo apt install php-fpm -y # 对于 Nginx


3. 配置防火墙

确保服务器的安全,配置 ufw 防火墙:

复制代码

BASH

sudo ufw allow http sudo ufw allow https sudo ufw enable


4. 部署网页内容

将你的网页文件(HTML、CSS、JavaScript 等)上传到服务器的默认网页目录:

4.1. Nginx 默认目录

Nginx 的默认网页目录是 /var/www/html/,你可以将文件复制到这里:

复制代码

BASH

sudo cp /path/to/your/web/files /var/www/html/

调整文件权限:

复制代码

BASH

sudo chown -R www-data:www-data /var/www/html/ sudo chmod -R 755 /var/www/html/

4.2. Apache 默认目录

Apache 的默认网页目录是 /var/www/html/,同样将文件复制到这里:

复制代码

BASH

sudo cp /path/to/your/web/files /var/www/html/

调整文件权限:

复制代码

BASH

sudo chown -R www-data:www-data /var/www/html/ sudo chmod -R 755 /var/www/html/


5. 配置域名(可选)

如果你有域名,可以将其解析到服务器的 IP 地址,并配置 Nginx 或 Apache 的虚拟主机文件。

5.1. Nginx 虚拟主机配置

创建一个新的虚拟主机配置文件:

复制代码

BASH

sudo nano /etc/nginx/sites-available/your_domain.conf

添加以下内容(以 Nginx 为例):

复制代码

NGINX

server { listen 80; server_name your_domain.com www.your_domain.com; root /var/www/html; index index.html index.php; location / { try_files $uri $uri/ =404; } }

启用配置并重启 Nginx:

复制代码

BASH

sudo ln -s /etc/nginx/sites-available/your_domain.conf /etc/nginx/sites-enabled/ sudo nginx -t sudo systemctl restart nginx

5.2. Apache 虚拟主机配置

创建一个新的虚拟主机配置文件:

复制代码

BASH

sudo nano /etc/apache2/sites-available/your_domain.conf

添加以下内容(以 Apache 为例):

复制代码

APACHE

<VirtualHost *:80> ServerName your_domain.com ServerAlias www.your_domain.com

复制代码
+-------------------+
|  开始             |
+-------------------+
       |
       v
+-------------------+
|  准备环境         |
|  (更新系统)       |
+-------------------+
       |
       v
+-------------------+
|  安装必要软件    |
|  (Nginx/Apache/   |
|  MySQL/PHP)      |
+-------------------+
       |
       v
+-------------------+
|  配置防火墙      |
|  (开放 HTTP/HTTPS)|
+-------------------+
       |
       v
+-------------------+
|  部署网页内容    |
|  (上传文件到     |
|  /var/www/html/) |
+-------------------+
       |
       v
+-------------------+
|  配置域名(可选) |
|  (创建虚拟主机   |
|  配置文件)      |
+-------------------+
       |
       v
+-------------------+
|  完成             |
|  (访问网页测试)  |
+-------------------+

6.为了在没有域名的情况下,通过IP地址访问你的网页应用,可以按照以下步骤配置Nginx:

  1. 确认Nginx安装和运行状态

    复制代码

    BASH

    sudo systemctl status nginx

    如果Nginx没有运行,可以启动它:

    复制代码

    BASH

    sudo systemctl start nginx

  2. 编辑Nginx的默认配置文件

    复制代码

    BASH

    sudo nano /etc/nginx/sites-available/default

    确保配置文件中server_name设置为_,以接受所有IP地址的请求:

    复制代码

    NGINX

    server { listen 80 default_server; listen [::]:80 default_server; root /var/www/html; index index.html index.htm index.nginx-debian.html; server_name _; location / { try_files $uri $uri/ =404; } }

  3. 检查Nginx配置是否正确

    复制代码

    BASH

    sudo nginx -t

    如果没有错误,重新加载Nginx:

    复制代码

    BASH

    sudo systemctl reload nginx

  4. 配置防火墙以允许HTTP和HTTPS流量

    复制代码

    BASH

    sudo ufw allow http sudo ufw allow https sudo ufw enable

  5. 通过IP地址访问网页

    在浏览器中输入:

    复制代码

    TEXT

    http://your_server_ip

    替换your_server_ip为你的Ubuntu服务器的实际IP地址,例如:

    复制代码

    TEXT

    http://192.168.1.100

  6. 验证网页访问

    如果配置正确

相关推荐
菜鸟的日志1 天前
【嵌入系统】嵌入式学习笔记(一)
windows·笔记·嵌入式硬件·学习·ubuntu·操作系统
相国1 天前
在Windows里通过WSL安装Ubuntu 22.04
linux·windows·ubuntu·wsl
JiaWen技术圈1 天前
增量静态再生(ISR)详解:Next.js 中的实现与应用
javascript·git·ubuntu
萑澈1 天前
Linux内核安全态势报告:2021-2026年高危漏洞演进与深度技术分析
linux·ubuntu
烛衔溟2 天前
TypeScript 索引签名、只读数组与 keyof / typeof 入门
linux·ubuntu·typescript
良木生香2 天前
【Linux系统编程】Linux基础指令(1)---一文带你了解Linux的基础指令
linux·运维·服务器·ubuntu·机器学习·系统架构·centos
zhangrelay3 天前
三分钟云课实践速通--C/C++程序设计--
linux·c语言·c++·笔记·学习·ubuntu
lbb 小魔仙3 天前
Ubuntu 22.04 + Windows 本地部署 AI 大模型完全指南:Ollama + Python 调用实战(附国内加速配置)
人工智能·windows·python·ubuntu
萧行之3 天前
Ubuntu+Windows双系统:解决GRUB不显示Windows启动项、一闪而过问题
linux·windows·ubuntu
搬砖的小码农_Sky3 天前
Linux操作系统:Ubuntu和Debian的区别
linux·ubuntu·debian