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. 验证网页访问

    如果配置正确

相关推荐
~光~~4 小时前
【环境配置 升级gcc】RK3588 Ubuntu20.04 gcc9升级为gcc10
ubuntu·gcc
你疯了抱抱我7 小时前
【SSH】同一局域网下windows使用Xshell SSH连接另一台 ubuntu 22.04 电脑
运维·ubuntu·ssh
2301_818411557 小时前
Ubuntu之apt更新源
linux·运维·ubuntu
亮子AI12 小时前
【Ubuntu】清理空间的几种方法
linux·运维·ubuntu
lovod13 小时前
如何在ubuntu20.04配置动态壁纸和bongoCat
ubuntu·动态壁纸·bongocat
风为你而吹15 小时前
【玩泰山派】4、制作ubuntu镜像-(6)使用鲁班猫的sdk去制作镜像
linux·运维·ubuntu
阿巴~阿巴~19 小时前
使用 C 语言连接 MySQL 客户端(重点)
服务器·数据库·sql·mysql·ubuntu
CS_Zero19 小时前
【开发工具】Windows10&11远程Ubuntu18及以上桌面
笔记·ubuntu
CS Beginner1 天前
【Linux】 Ubuntu 开发环境极速搭建
linux·运维·ubuntu
₯㎕星空&繁华1 天前
阿里云服务器安装MySQL服务器
服务器·ubuntu·阿里云·云计算