返回

用简单的步骤在Ubuntu上创建网站并发布到公网访问

前端

在 Ubuntu 上构建并发布一个网站

使用 Ubuntu 搭建和发布网站是一个相对简单的过程,只需要一些基本的软件和配置即可完成。本指南将引导你一步一步完成整个流程,从安装必要的软件到配置 Web 服务器和数据库。

准备工作

在开始之前,你需要准备以下内容:

  • 一台运行 Ubuntu 的计算机
  • 一个域名(例如,example.com)
  • 一个虚拟主机或服务器

安装软件

首先,我们需要安装 Apache Web 服务器、MySQL 数据库和 PHP 编程语言。可以通过以下命令完成:

sudo apt-get update
sudo apt-get install apache2
sudo apt-get install mysql-server
sudo apt-get install php libapache2-mod-php

配置 Web 服务器

接下来,我们需要配置 Apache Web 服务器。在以下文件中添加以下内容:

sudo nano /etc/apache2/sites-available/000-default.conf
<VirtualHost *:80>
    ServerAdmin webmaster@example.com
    ServerName example.com
    DocumentRoot /var/www/html/example.com
    <Directory /var/www/html/example.com>
        AllowOverride All
    </Directory>
</VirtualHost>

启用网站并重启 Apache:

sudo a2ensite example.com
sudo service apache2 restart

创建数据库

使用以下命令登录 MySQL 并创建数据库:

mysql -u root -p
CREATE DATABASE example_db;

创建用户并授予权限:

CREATE USER 'example_user'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON example_db.* TO 'example_user'@'localhost';
FLUSH PRIVILEGES;

创建网站内容

/var/www/html/example.com 目录下创建一个名为 index.php 的文件,并添加以下内容:

<?php
$servername = "localhost";
$username = "example_user";
$password = "password";
$dbname = "example_db";

// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}

$sql = "SELECT * FROM customers";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
    // output data of each row
    while($row = $result->fetch_assoc()) {
        echo "id: " . $row["id"]. " - Name: " . $row["name"]. " - Email: " . $row["email"]. "<br>";
    }
} else {
    echo "0 results";
}
$conn->close();
?>

发布网站

将你的域名指向你的虚拟主机或服务器的 IP 地址。然后在浏览器中输入你的域名,你应该会看到你的网站。

内网穿透

如果你想让你的网站从互联网上访问,你需要使用内网穿透工具。有很多种内网穿透工具可用,比如花生壳、nat123和FRP。

常见问题解答

1. 如何更改网站的域名?

编辑 Apache 配置文件(/etc/apache2/sites-available/000-default.conf),将 ServerName 更改为你新的域名。

2. 如何创建新的 MySQL 数据库用户?

使用以下命令:

CREATE USER 'new_user'@'localhost' IDENTIFIED BY 'new_password';
GRANT ALL PRIVILEGES ON example_db.* TO 'new_user'@'localhost';
FLUSH PRIVILEGES;

3. 如何连接到 MySQL 数据库?

使用以下命令:

mysql -u username -p

然后输入你的密码。

4. 如何导入 SQL 文件?

使用以下命令:

mysql -u username -p example_db < sql_file.sql

5. 如何使用内网穿透工具?

这取决于你使用的特定工具。请参考工具的文档。

结论

使用 Ubuntu 构建和发布网站是一个简单的过程,可以通过遵循本指南中的步骤轻松完成。通过使用合适的软件和配置,你可以创建和发布一个功能强大的网站,供全世界访问。