菜鸟科技网

阿里云Linux系统建站步骤有哪些?

在阿里云Linux系统上建站是一个涉及环境配置、服务部署和安全优化的系统性过程,以下以主流的CentOS系统为例,结合LAMP(Linux+Apache+MySQL+PHP)环境,详细讲解从基础准备到网站上线的完整步骤。

阿里云Linux系统建站步骤有哪些?-图1
(图片来源网络,侵删)

基础环境准备

  1. 购买与配置ECS实例
    登录阿里云控制台,进入ECS管理界面,创建实例时选择“公共镜像”中的CentOS 7.x及以上版本,配置建议:

    • 实例规格:初期可选1vCPU/2GB内存(如g6.large.2),后期根据流量升级;
    • 网络类型:选择“专有网络”,确保安全组策略合理;
    • 系统盘:默认40GB SSD,若网站数据量大可扩容;
    • 安全组:开放必要端口(如HTTP 80、HTTPS 443、SSH 22),并设置IP白名单限制访问来源。

    实例创建后,通过SSH工具(如Xshell、PuTTY)远程连接,输入用户名(root)和密码/密钥对登录,首次登录需执行系统更新:

    yum update -y
  2. 配置时间同步与防火墙
    确保系统时间准确,安装并启动NTP服务:

    yum install ntp -y
    systemctl start ntpd
    systemctl enable ntpd

    关闭防火墙(或开放指定端口),以CentOS 7为例:

    阿里云Linux系统建站步骤有哪些?-图2
    (图片来源网络,侵删)
    systemctl stop firewalld  # 临时关闭
    systemctl disable firewalld  # 禁止开机启动
    # 或开放80/443端口:
    firewall-cmd --permanent --add-service=http
    firewall-cmd --permanent --add-service=https
    firewall-cmd --reload

安装LAMP环境组件

安装Apache服务

Apache是最流行的Web服务器之一,通过yum安装:

yum install httpd -y

安装后启动服务并设置开机自启:

systemctl start httpd
systemctl enable httpd

验证安装:在浏览器中输入ECS公网IP,若显示Apache测试页,则安装成功,网站默认根目录为/var/www/html,可通过修改/etc/httpd/conf/httpd.conf中的DocumentRoot调整。

安装MySQL数据库

阿里云推荐使用Percona或MariaDB(MySQL分支),此处以MariaDB为例:

阿里云Linux系统建站步骤有哪些?-图3
(图片来源网络,侵删)
yum install mariadb-server mariadb -y
systemctl start mariadb
systemctl enable mariadb

执行安全脚本设置root密码、移除匿名用户等:

mysql_secure_installation

根据提示操作,建议设置强密码并禁止root远程登录(后期可通过普通用户授权)。

安装PHP及常用扩展

PHP是网站脚本语言,需安装对应版本的PHP及扩展(以PHP 7.4为例):

yum install epel-release -y  # 安装EPEL源
rpm -Uvh http://rpms.remirepo.net/enterprise/remi-release-7.rpm  # 添加Remi源
yum install --enablerepo=remi-php74 php php-fpm php-mysqlnd php-gd php-xml php-mbstring -y

安装后启动PHP-FPM(Apache与PHP集成需通过PHP-FPM):

systemctl start php-fpm
systemctl enable php-fpm

测试PHP是否正常:在/var/www/html目录下创建info.php<?php phpinfo(); ?>,访问http://ECS_IP/info.php,若显示PHP配置信息则成功。

配置网站与数据库

创建网站目录及数据库

假设网站域名为example.com,执行以下操作:

mkdir -p /var/www/example.com  # 创建网站根目录
chown -R apache:apache /var/www/example.com  # 设置所有者为apache用户
chmod -R 755 /var/www/example.com  # 设置权限

登录MySQL创建数据库及用户:

mysql -u root -p

进入MySQL后执行:

CREATE DATABASE example_db DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'example_user'@'localhost' IDENTIFIED BY 'YourStrongPassword';
GRANT ALL PRIVILEGES ON example_db.* TO 'example_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;

配置虚拟主机

编辑Apache配置文件,添加网站虚拟主机:

vim /etc/httpd/conf.d/example.com.conf
```  根据实际域名和路径修改):  
```apache
<VirtualHost *:80>
    ServerAdmin admin@example.com
    ServerName example.com
    ServerAlias www.example.com
    DocumentRoot /var/www/example.com
    ErrorLog /var/log/httpd/example.com_error.log
    CustomLog /var/log/httpd/example.com_access.log combined
    <Directory /var/www/example.com>
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
    </Directory>
</VirtualHost>

保存后重启Apache服务:

systemctl restart httpd

部署网站程序

上传网站源码

可通过以下方式上传源码(如WordPress、Discuz等):

  • SCP/SFTP工具:使用Xshell等工具的文件传输功能,将本地源码包上传至/var/www/example.com
  • wget下载:若源码为公开下载链接(如WordPress官网),可直接在服务器下载:
    cd /var/www/example.com
    wget https://wordpress.org/latest.tar.gz
    tar -zxvf latest.tar.gz
    mv wordpress/* .  # 解压并移动文件
    rm -rf wordpress latest.tar.gz  # 清理临时文件

配置网站权限

确保网站目录权限正确,避免文件无法写入:

chown -R apache:apache /var/www/example.com
find /var/www/example.com -type d -exec chmod 755 {} \;  # 目录权限755
find /var/www/example.com -type f -exec chmod 644 {} \;  # 文件权限644

优化与安全配置

  1. 安装SSL证书(HTTPS)
    可通过阿里云免费SSL证书服务申请证书,下载后上传至服务器,配置Apache启用HTTPS:

    vim /etc/httpd/conf.d/example.com-ssl.conf

    添加以下内容(替换证书路径):

    <VirtualHost *:443>
        ServerName example.com
        DocumentRoot /var/www/example.com
        SSLEngine on
        SSLCertificateFile /etc/pki/tls/certs/example.com.crt
        SSLCertificateKeyFile /etc/pki/tls/private/example.com.key
        SSLCertificateChainFile /etc/pki/tls/certs/example.com.ca-bundle
    </VirtualHost>

    重启Apache后,通过https://example.com访问,若显示安全锁则配置成功。

  2. 安全加固措施

    • 禁用root远程登录:编辑/etc/ssh/sshd_config,将PermitRootLogin yes改为no,重启SSH服务;
    • 安装安全软件:如Fail2ban(防暴力破解)、ClamAV(杀毒);
    • 定期备份数据:通过阿里云云备份或手动打包网站文件和数据库,上传至OSS存储。

性能优化建议

  • 启用缓存:安装Redis或Memcached,为PHP和数据库缓存加速;
  • 配置CDN:通过阿里云CDN加速静态资源(图片、CSS、JS),减轻服务器压力;
  • 开启Gzip压缩:在Apache配置中添加mod_deflate模块,压缩传输内容。

相关问答FAQs

Q1:如何解决网站访问时出现403 Forbidden错误?
A:403错误通常是由于目录权限或SELinux配置问题导致,可按以下步骤排查:

  1. 检查网站目录权限:确保/var/www/example.com及子目录所有者为apache,权限为755(目录)和644(文件);
  2. 临时关闭SELinux测试:setenforce 0,若恢复正常则需永久关闭或配置SELinux策略(semanage fcontext -a -t httpd_sys_content_t "/var/www/example.com(/.*)?");
  3. 检查Apache配置文件中AllowOverride是否设置为All(需启用.htaccess伪静态时)。

Q2:如何备份数据库和网站文件?
A:可通过以下方式手动备份:

  1. 备份数据库:使用mysqldump命令导出SQL文件,
    mysqldump -u example_user -p example_db > /backup/example_db_$(date +%Y%m%d).sql

    输入密码后,文件将保存在/backup目录,需提前创建该目录(mkdir /backup);

  2. 备份网站文件:使用tar命令打包网站目录,
    tar -czf /backup/example.com_$(date +%Y%m%d).tar.gz /var/www/example.com

    备份文件建议定期上传至阿里云OSS,避免服务器故障导致数据丢失。

分享:
扫描分享到社交APP
上一篇
下一篇