Ubuntu真的完全免费吗?

前期准备

  1. 服务器选择

    • 云服务器:推荐阿里云、酷盾(1核2G起步,约¥60/月),选择Ubuntu 22.04或CentOS 7+系统。
    • 本地服务器:需公网IP并配置端口转发(80/443端口)。
    • 域名注册:在阿里云/GoDaddy购买域名(如 example.com),完成实名认证。
  2. 基础环境配置

    # 更新系统
    sudo apt update && sudo apt upgrade -y  # Ubuntu/Debian
    sudo yum update -y && sudo yum upgrade -y  # CentOS
    # 创建管理用户(非root)
    sudo adduser webadmin
    sudo usermod -aG sudo webadmin  # 授予sudo权限

安装LAMP/LEMP环境

方案1:LAMP(Apache + MySQL + PHP)

# CentOS
sudo yum install httpd mariadb-server php php-mysqlnd -y
sudo systemctl start httpd mariadb
sudo systemctl enable httpd mariadb

方案2:LEMP(Nginx + MySQL + PHP)

# CentOS
sudo yum install nginx mariadb-server php-fpm php-mysqlnd -y
sudo systemctl start nginx mariadb php-fpm
sudo systemctl enable nginx mariadb php-fpm

配置Web服务器

Apache虚拟主机(LAMP)

  1. 创建网站目录:
    sudo mkdir -p /var/www/example.com/public_html
    sudo chown -R webadmin:webadmin /var/www/example.com
  2. 配置虚拟主机:
    sudo nano /etc/apache2/sites-available/example.com.conf
    <VirtualHost *:80>
       ServerName example.com
       ServerAlias www.example.com
       DocumentRoot /var/www/example.com/public_html
       ErrorLog ${APACHE_LOG_DIR}/error.log
       CustomLog ${APACHE_LOG_DIR}/access.log combined
    </VirtualHost>
  3. 启用配置:
    sudo a2ensite example.com.conf
    sudo systemctl reload apache2

Nginx虚拟主机(LEMP)

  1. 创建网站目录(同上)。

  2. 配置虚拟主机:

    sudo nano /etc/nginx/conf.d/example.com.conf
    server {
       listen 80;
       server_name example.com www.example.com;
       root /var/www/example.com/public_html;
       index index.php index.html;
       location / {
           try_files $uri $uri/ =404;
       }
       location ~ \.php$ {
           include snippets/fastcgi-php.conf;
           fastcgi_pass unix:/var/run/php/php8.1-fpm.sock;  # 根据PHP版本调整
       }
    }
  3. 重启Nginx:

    sudo nginx -t && sudo systemctl reload nginx

域名解析与测试

  1. 域名解析

    • 在域名控制台添加A记录:
      → 服务器IP
      www → 服务器IP
    • 等待生效(通常10分钟)。
  2. 测试页面

    echo "<?php phpinfo(); ?>" > /var/www/example.com/public_html/index.php

    访问 http://example.com,显示PHP信息页即成功。


安装网站程序(以WordPress为例)

  1. 下载并解压

    cd /var/www/example.com/public_html
    wget https://wordpress.org/latest.tar.gz
    tar -xzvf latest.tar.gz --strip-components=1
    rm latest.tar.gz
  2. 配置数据库

    sudo mysql -u root -p
    # 执行SQL命令:
    CREATE DATABASE wp_db;
    CREATE USER 'wp_user'@'localhost' IDENTIFIED BY 'StrongPassword!123';
    GRANT ALL PRIVILEGES ON wp_db.* TO 'wp_user'@'localhost';
    FLUSH PRIVILEGES;
    EXIT;
  3. 完成安装
    访问 http://example.com,按向导填写数据库信息(数据库名:wp_db,用户:wp_user,密码:StrongPassword!123)。


安全加固

  1. 防火墙配置

    sudo ufw allow 80/tcp   # HTTP
    sudo ufw allow 443/tcp  # HTTPS
    sudo ufw allow 22/tcp   # SSH
    sudo ufw enable
  2. SSL证书(Let’s Encrypt)

    # 安装Certbot
    sudo apt install certbot python3-certbot-apache -y  # Apache
    sudo apt install certbot python3-certbot-nginx -y   # Nginx
    # 获取证书
    sudo certbot --apache -d example.com -d www.example.com  # Apache
    sudo certbot --nginx -d example.com -d www.example.com   # Nginx

    证书自动续期已配置。

  3. 文件权限优化

    sudo chmod 750 /var/www/example.com/public_html
    sudo find /var/www/example.com -type d -exec chmod 755 {} \;
    sudo find /var/www/example.com -type f -exec chmod 644 {} \;

维护与管理

  • 备份

    # 数据库备份
    mysqldump -u root -p wp_db > wp_backup_$(date +%F).sql
    # 网站文件备份
    tar -czvf website_backup_$(date +%F).tar.gz /var/www/example.com
  • 更新

    sudo apt update && sudo apt upgrade -y  # 系统更新
    sudo /usr/local/bin/wp-cli core update  # WordPress更新(需先安装WP-CLI)

常见问题排查

  1. 403 Forbidden:检查目录权限(chmod 755 /var/www)和SELinux状态(setenforce 0临时关闭)。
  2. 数据库连接失败:确认MySQL用户权限及wp-config.php中的密码是否正确。
  3. 502 Bad Gateway:PHP-FPM未运行(sudo systemctl restart php-fpm)。

引用说明

本文参考以下权威资源:

  • Apache官方文档:https://httpd.apache.org/docs/
  • Nginx官方指南:https://nginx.org/en/docs/
  • Let’s Encrypt Certbot:https://certbot.eff.org/
  • WordPress安装手册:https://wordpress.org/support/article/installation/

重要提示:定期更新系统和软件是安全的核心,对于企业级应用,建议使用云服务商的安全组、WAF防火墙和自动备份服务。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/5920.html

(0)
酷番叔酷番叔
上一篇 2025年7月1日 01:04
下一篇 2025年7月1日 01:41

相关推荐

  • 连接字符串格式错误怎么办?

    连接DB2的核心前提安装DB2客户端或驱动官方客户端:从IBM官网下载Db2 Data Server Client(选择Linux版本), # 解压安装包并执行安装tar -zxvf v11.5.8_linuxx64_client.tar.gzcd client./db2_install -p "CL……

    2天前
    400
  • 安装依赖失败怎么办

    在Linux系统中使用nsg2(NetSurf Graphics Library)主要涉及图像格式转换和处理,它是NetSurf浏览器项目的核心组件之一,以下为详细操作指南:nsg2简介nsg2是NetSurf浏览器用于处理位图图像的库,支持.nsb(NetSurf Bitmap)、.nsg(NetSurf S……

    2025年7月5日
    1300
  • 内核和发行版有何区别?

    在Linux系统中,查看系统信息是管理服务器、排查问题或优化性能的基础操作,通过命令行工具,管理员可以快速获取硬件、软件及资源使用详情,以下命令均为Linux原生支持(除特殊说明外),无需额外安装,确保操作的权威性和可靠性,uname – 内核信息uname -a # 显示全部信息(内核名称、主机名、内核版本……

    6天前
    800
  • Mac装Linux如何选最佳方案?

    准备工作(必做)备份数据 使用Time Machine或云存储备份所有重要文件(避免安装过程导致数据丢失),检查Mac型号Intel芯片Mac:支持所有Linux发行版(Ubuntu、Fedora等),Apple Silicon(M1/M2):仅支持ARM架构的Linux(如Asahi Linux),查看方法……

    2025年6月30日
    1200
  • Linux打开PDF有哪些方法?

    Linux系统提供多种PDF打开方式:命令行工具(如mupdf)适合快速查看,图形应用(如Evince、Okular)支持完整功能,在线服务则方便跨平台访问,用户可按需选择。

    2025年6月17日
    1400

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信