菜鸟科技网

帝国CMS如何同时安装两个站点?

在同一个服务器上安装两个帝国CMS网站,需要合理规划目录、数据库配置和服务器设置,避免冲突,以下是详细步骤和注意事项,确保两个网站独立运行且互不影响。

帝国CMS如何同时安装两个站点?-图1
(图片来源网络,侵删)

前期准备

  1. 服务器环境要求
    确保服务器已安装必要环境:

    • Web服务器:Apache/Nginx(以Nginx为例)
    • 数据库:MySQL 5.6+ 或 MariaDB
    • PHP:7.0+(推荐7.2-7.4,与帝国CMS兼容性最佳)
    • 域名:两个已备案的域名(如site1.com和site2.com)
  2. 文件与数据库规划
    | 项目 | 网站1(site1.com) | 网站2(site2.com) |
    |------------|---------------------|---------------------|
    | 网站根目录 | /www/site1 | /www/site2 |
    | 数据库名 | empire_site1 | empire_site2 |
    | 数据库用户 | user_site1 | user_site2 |
    | 数据库密码 | password1 | password2 |

    提前在MySQL中创建两个数据库和对应用户,并赋予操作权限:

    CREATE DATABASE empire_site1 DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
    CREATE USER 'user_site1'@'localhost' IDENTIFIED BY 'password1';
    GRANT ALL PRIVILEGES ON empire_site1.* TO 'user_site1'@'localhost';
    FLUSH PRIVILEGES;

上传帝国CMS程序

  1. 下载程序
    从帝国CMS官网下载最新安装包(如e7.5),解压后得到e目录(核心程序)。

    帝国CMS如何同时安装两个站点?-图2
    (图片来源网络,侵删)
  2. 部署文件

    • e目录分别复制到两个网站根目录:
      cp -r /path/to/e /www/site1/  
      cp -r /path/to/e /www/site2/
    • 修改目录权限(Nginx用户通常为www-data):
      chown -R www:www /www/site1  
      chown -R www:www /www/site2

配置Nginx虚拟主机

  1. 创建配置文件
    在Nginx配置目录(如/etc/nginx/conf.d/)中创建两个配置文件:

    • site1.conf

      server {
          listen 80;
          server_name site1.com www.site1.com;
          root /www/site1;
          index index.php index.html;
          location / {
              try_files $uri $uri/ /e/index.php?$query_string;
          }
          location ~ \.php$ {
              fastcgi_pass 127.0.0.1:9000;
              fastcgi_index index.php;
              fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
              include fastcgi_params;
          }
      }
    • site2.conf
      site1.com替换为site2.comroot路径改为/www/site2

      帝国CMS如何同时安装两个站点?-图3
      (图片来源网络,侵删)
  2. 重载Nginx配置

    nginx -t && systemctl reload nginx

安装帝国CMS

  1. 访问安装页面
    分别通过浏览器访问:

    • http://site1.com/e/install/
    • http://site2.com/e/install/
  2. 填写数据库信息
    以网站1为例,安装步骤如下:

    • 步骤1:同意协议,点击“继续”。
    • 步骤2:选择“全新安装”,填写数据库名(empire_site1)、用户名(user_site1)、密码(password1)。
    • 步骤3:设置网站管理员账号(如admin1)和密码。
    • 步骤4:安装完成后,删除e/install/目录。

    网站2重复上述步骤,但需填写对应的数据库信息。

配置帝国CMS

  1. 修改配置文件
    编辑两个网站的e/class/config.php文件,确保数据库信息正确:

    • 网站1:
      $empire_db['dbname'] = 'empire_site1';  
      $empire_db['username'] = 'user_site1';  
      $empire_db['password'] = 'password1';  
    • 网站2:修改为对应数据库信息。
  2. 设置伪静态规则
    在Nginx配置文件中添加帝国CMS伪静态规则(已在上文location /中包含)。

常见问题处理

  1. 数据库连接失败
    检查数据库用户权限、密码是否正确,以及防火墙是否阻止3306端口。

  2. 后台登录冲突
    确保两个网站的后台路径不同(默认均为e/admin/),可通过修改e/class/config.php中的$ecms_config['admin']['fileadmin']值区分。

  3. 文件路径冲突
    避免两个网站使用相同的附件或缓存目录,可在后台“系统设置”中分别配置。

相关问答FAQs

Q1: 两个帝国CMS能否共享同一个数据库?
A: 不建议共享,数据库表名可能冲突,且数据关联容易混乱,若必须共享,需通过表前缀区分(如enews1_enews2_),并在安装时手动修改表前缀。

Q2: 如何验证两个网站是否完全独立?
A: 验证方法:

  1. 登录两个网站的后台,检查用户数据是否独立(如管理员账号不同)。
  2. 发布一篇测试文章,确认数据库中数据分别存放在empire_site1empire_site2中。
  3. 修改网站1的模板,确认网站2显示不受影响。
分享:
扫描分享到社交APP
上一篇
下一篇