安企CMS的安装-服务器手动部署
适用场景无面板的 Linux 服务器如 CentOS / Ubuntu适合熟悉命令行操作的用户。通过下载安装包、配置 Nginx 反向代理和 MySQL 数据库的方式完成部署。前置准备一台 Linux 服务器CentOS 7 或 Ubuntu 20.04已安装 Nginx 和 MySQL 5.6.35推荐使用 LNMP 一键安装包一个已解析到服务器的域名已下载 AnQiCMS Linux 安装包安装步骤Step 1下载并解压# 登录服务器sshrootyour-server-ip# 下载安装包以 v3.6.2 为例wgethttps://github.com/fesiong/anqicms/releases/download/v3.6.2/anqicms-linux-v3.6.2.zip# 创建站点目录mkdir-p/data/wwwroot/anqicms# 解压安装包unzipanqicms-linux-v3.6.2.zip-d/data/wwwroot/anqicms# 进入站点目录cd/data/wwwroot/anqicms# 查看文件列表ls-la解压后的目录结构/data/wwwroot/anqicms/ ├── anqicms # 主程序可执行文件 ├── start.sh # 启动脚本 ├── stop.sh # 停止脚本 ├── config.json # 配置文件 ├── public/ # Web 根目录 ├── template/ # 模板目录 └── system/ # 后台管理界面Step 2启动 AnQiCMS# 启动前确保 config.json 中的端口配置正确默认 8001catconfig.json# {server:{site_name:,env:production,port:8001,log_level:release}}# 执行启动脚本./start.sh# 检查是否启动成功ps-ef|grepanqicms# 如果看到 anqicms 进程说明启动成功Step 3配置 Nginx 反向代理创建或编辑 Nginx 站点配置文件vim/etc/nginx/conf.d/anqicms.conf写入以下配置server { listen 80; server_name www.anqicms.com m.anqicms.com; root /data/wwwroot/anqicms/public; location AnqiCMS { proxy_pass http://127.0.0.1:8001; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } location / { try_files $uri $uri/index.html AnqiCMS; } # 静态资源直接由 Nginx 处理不经过反向代理 location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|js|css|ico)$ { expires 30d; access_log off; } access_log /var/log/nginx/anqicms-access.log; error_log /var/log/nginx/anqicms-error.log; }注意将server_name和root路径替换为你的实际域名和站点路径。验证配置并重载 Nginx# 测试配置是否正确nginx-t# 重载 Nginx 使配置生效nginx-sreloadStep 4添加计划任务保活为了让 AnQiCMS 在服务器重启后自动运行添加 crontab 计划任务# 编辑 crontabcrontab-e# 添加以下行每分钟检查一次 anqicms 进程*/1 * * * * /data/wwwroot/anqicms/start.sh# 保存并退出vim 中 :wq手动执行一次启动脚本./start.shStep 5配置 HTTPS可选推荐使用 Let’s Encrypt 免费 SSL 证书# 安装 certbot# CentOS:yuminstallcertbot python3-certbot-nginx# Ubuntu:aptinstallcertbot python3-certbot-nginx# 获取并自动配置 SSL 证书certbot--nginx-dwww.anqicms.com-dm.anqicms.com# 按照提示完成验证certbot 会自动修改 Nginx 配置Step 6初始化安装在浏览器中访问http://www.anqicms.com进入初始化安装界面填写数据库信息和管理员账号Apache 反向代理配置可选如果使用 Apache 而非 Nginx配置如下VirtualHost *:80 ServerName www.anqicms.com ServerAlias m.anqicms.com DocumentRoot /data/wwwroot/anqicms/public ProxyPass / http://127.0.0.1:8001/ ProxyPassReverse / http://127.0.0.1:8001/ Directory /data/wwwroot/anqicms/public Options FollowSymLinks AllowOverride All Require all granted /Directory ErrorLog /var/log/apache2/anqicms-error.log CustomLog /var/log/apache2/anqicms-access.log combined /VirtualHost需要启用 Apache 的 proxy 模块a2enmod proxy proxy_http systemctl restart apache2常用管理命令# 启动cd/data/wwwroot/anqicms./start.sh# 停止cd/data/wwwroot/anqicms./stop.sh# 查看运行状态ps-ef|grepanqicms# 查看运行日志tail-f/data/wwwroot/anqicms/running.log# 查看启动检测日志tail-f/data/wwwroot/anqicms/check.log# 修改端口编辑 config.json 后重启vim/data/wwwroot/anqicms/config.json# 修改 port: 8001 为其他端口验证安装# 1. 检查进程是否运行ps-ef|grepanqicms|grep-vgrep# 2. 检查端口是否监听netstat-tlnp|grep8001# 3. 浏览器访问域名应看到网站首页或安装界面# 4. 访问 域名/system/ 进入后台❓ 我安装了 MySQL但不知道 root 密码是什么怎么办如果是通过 LNMP 一键安装包安装的 MySQLroot 密码通常保存在以下位置# LNMP 安装包cat/root/.mysql_root_password# 或cat/usr/local/mysql/root.txt# 宝塔面板安装的 MySQLcat/www/server/mysql/default.pass如果以上都找不到可以绕过 MySQL 认证来重置密码以 Ubuntu 为例# 1. 停止 MySQLsystemctl stop mysql# 2. 以跳过权限检查的方式启动mysqld_safe --skip-grant-tables# 3. 无密码登录 MySQLmysql-uroot# 4. 在 MySQL 命令行中重置密码ALTERUSERrootlocalhostIDENTIFIED BY你的新密码;FLUSH PRIVILEGES;EXIT;# 5. 重启 MySQLsystemctl restart mysql❓ 配置完 Nginx 后访问域名显示的是 Nginx 默认欢迎页而不是安装界面为什么这是新手最常犯的错误。原因通常有以下两个原因一Nginx 的 root 路径指向了默认网站目录# 检查默认网站配置文件中是否还有 server 块ls/etc/nginx/conf.d/default.conf# 如果有暂时将其重命名禁用mv/etc/nginx/conf.d/default.conf /etc/nginx/conf.d/default.conf.bak nginx-sreload原因二Nginx 配置中的 root 没有指向 public 子目录# ❌ 错误 root /data/wwwroot/anqicms; # ✅ 正确 root /data/wwwroot/anqicms/public;原因三DNS 未生效刚添加的域名解析可能需要几分钟到几小时才能全球生效。可以用以下命令测试# 直接通过服务器 IP 测试如果 AnQiCMS 监听在 8001 端口curl-Ihttp://127.0.0.1:8001# 如果返回 200 或 302说明 AnQiCMS 正常运行是 Nginx 或 DNS 的问题❓ 我修改了 config.json 中的端口为 8080还需要同步修改哪里修改端口后必须同步修改以下两处位置修改内容Nginx 配置中的proxy_passproxy_pass http://127.0.0.1:8080;而不是 8001重启 AnQiCMS改完 config.json 后必须重启进程才生效如果不修改 Nginx 的proxy_passNginx 仍然会尝试把请求转发到 8001 端口而 AnQiCMS 已经在 8080 端口监听用户就会看到 502 Bad Gateway。

相关新闻

二维码断笔、虚笔微缺陷识别技术

二维码断笔、虚笔微缺陷识别技术

高速赋码生产中,油墨粘度不足、喷头微堵、气压波动,会造成二维码局部断笔、虚笔、细笔等微小缺陷。这类码体肉眼看似完整,扫码可勉强识别,但码体容错率大幅下降,在仓储磨损、光线不佳场景下极易失效,属于典…

2026/7/19 3:41:31阅读更多 →
我是一名正在学习C语言的初学者

我是一名正在学习C语言的初学者

目前呢是准大一,准备在c语言先在暑期期间打好基础。目前呢比较局限,是通过b站进行学习。每天学习时间并不多。每周有4~5个小时去听课学习。对未来的期望呢,就是希望能通过努力学习技能,成长自我。目前对行业并没有太多了解&#x…

2026/7/19 3:41:31阅读更多 →
Python+Appium微信自动化:从环境搭建到消息发送实战

Python+Appium微信自动化:从环境搭建到消息发送实战

1. 项目概述:为什么选择 Python Appium 来操作微信?如果你正在寻找一种能自动处理微信消息、管理好友、或者定时发送朋友圈的方法,并且希望这个方案足够稳定、可编程,那么 Python 配合 Appium 这套组合拳,很可能是你目…

2026/7/19 3:39:31阅读更多 →
SpringBoot+Vue3智慧停车场管理系统实战开发指南

SpringBoot+Vue3智慧停车场管理系统实战开发指南

这次我们来看一个完整的智慧停车场管理系统项目,基于SpringBootVue3技术栈实现。这个项目特别适合Java学习者、毕业设计开发者以及需要快速搭建停车场管理系统的团队使用。项目采用前后端分离架构,前端使用Vue3Element Plus,后端基于SpringBo…

2026/7/19 6:51:49阅读更多 →
LangChain核心组件深入理解第一篇 -- Agent LLM自主决策引擎

LangChain核心组件深入理解第一篇 -- Agent LLM自主决策引擎

深入理解 LangChain Agent:从核心组件到生产级中间件体系 摘要 随着大语言模型应用从简单链式调用迈向自主任务执行,Agent(智能代理)成为范式跃迁的核心。本文系统梳理 LangChain Agent 的四大核心组件——Model、Tools、System…

2026/7/19 6:51:49阅读更多 →
3种实用方法解决MelonLoader Cpp2IL下载失败:从诊断到修复的完整指南

3种实用方法解决MelonLoader Cpp2IL下载失败:从诊断到修复的完整指南

3种实用方法解决MelonLoader Cpp2IL下载失败:从诊断到修复的完整指南 【免费下载链接】MelonLoader The Worlds First Universal Mod Loader for Unity Games compatible with both Il2Cpp and Mono 项目地址: https://gitcode.com/gh_mirrors/me/MelonLoader …

2026/7/19 6:51:49阅读更多 →
成年人常用的10款社交平台有哪些?根据泛社交、婚恋交友、兴趣/圈层测评

成年人常用的10款社交平台有哪些?根据泛社交、婚恋交友、兴趣/圈层测评

小编实测几款成年人常用的社交平台,不要额外下载,在微信一搜就能用。覆盖泛社交、圈层兴趣、婚恋交友,精准匹配你的社交需求,高效告别独处和圈子贫瘠的烦恼。泛社交圈层成长:群鱼湾小程序核心人群:想拓展优…

2026/7/19 6:51:49阅读更多 →
论文致谢太官方像AI?2026高校致谢审核标准|Okbiye走心原创不撞款

论文致谢太官方像AI?2026高校致谢审核标准|Okbiye走心原创不撞款

Okbiye走心原创不撞款https://www.okbiye.com 一、前言:2026终审真相,致谢是论文最后一张门面 绝大多数毕业生都有致命误区:致谢是论文无关紧要的收尾板块,随便套模板凑字数、写几句客套话就能过关,不影响论文分数和…

2026/7/19 6:51:49阅读更多 →
C#异步编程中的线程安全与锁机制实践

C#异步编程中的线程安全与锁机制实践

1. 异步线程操作类变量的核心挑战在C#多线程编程中,操作类成员变量时最常遇到的陷阱就是线程安全问题。当多个线程同时读写同一个类实例的字段或属性时,如果没有适当的同步机制,就会导致数据竞争(Data Race)和状态不一…

2026/7/19 6:49:49阅读更多 →
Go语言静态资源打包方案对比与实践指南

Go语言静态资源打包方案对比与实践指南

1. 项目背景与核心需求在Go语言开发中,我们经常需要处理静态资源文件的打包问题。无论是Web应用的模板文件、前端资源,还是配置文件、证书等,都需要随程序一起分发。传统做法是将这些文件与编译后的二进制文件放在同一目录下,但这…

2026/7/19 0:01:04阅读更多 →
Go语言实现高性能LDAP认证服务的架构与实践

Go语言实现高性能LDAP认证服务的架构与实践

1. 项目背景与核心价值LDAP(轻量级目录访问协议)作为企业级身份认证的黄金标准,已经服务了超过80%的财富500强公司。我在金融科技领域实施统一认证体系时,发现传统Java方案存在启动慢、内存占用高等痛点。而Go语言凭借其协程并发模…

2026/7/19 0:01:04阅读更多 →
【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

更多请点击: https://intelliparadigm.com 第一章:AI面试官实战指南的核心价值与适用场景 AI面试官并非替代人类HR的“黑箱工具”,而是以可解释、可审计、可迭代的方式,赋能招聘全链路的关键基础设施。其核心价值在于将主观经验沉…

2026/7/19 0:01:04阅读更多 →
Go语言静态资源打包方案对比与实践指南

Go语言静态资源打包方案对比与实践指南

1. 项目背景与核心需求在Go语言开发中,我们经常需要处理静态资源文件的打包问题。无论是Web应用的模板文件、前端资源,还是配置文件、证书等,都需要随程序一起分发。传统做法是将这些文件与编译后的二进制文件放在同一目录下,但这…

2026/7/19 0:01:04阅读更多 →
Go语言实现高性能LDAP认证服务的架构与实践

Go语言实现高性能LDAP认证服务的架构与实践

1. 项目背景与核心价值LDAP(轻量级目录访问协议)作为企业级身份认证的黄金标准,已经服务了超过80%的财富500强公司。我在金融科技领域实施统一认证体系时,发现传统Java方案存在启动慢、内存占用高等痛点。而Go语言凭借其协程并发模…

2026/7/19 0:01:04阅读更多 →
【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

更多请点击: https://intelliparadigm.com 第一章:AI面试官实战指南的核心价值与适用场景 AI面试官并非替代人类HR的“黑箱工具”,而是以可解释、可审计、可迭代的方式,赋能招聘全链路的关键基础设施。其核心价值在于将主观经验沉…

2026/7/19 0:01:04阅读更多 →
YOLOv8推理性能优化:从1.2FPS到35FPS的全链路加速实践

YOLOv8推理性能优化:从1.2FPS到35FPS的全链路加速实践

如果你在部署 YOLOv8 时,发现推理速度只有可怜的 1-2 FPS,而别人的演示视频却能跑到 30 FPS 以上,那么问题很可能不在模型本身,而在于你的整个处理链路。很多开发者拿到一个训练好的 YOLOv8 模型后,会直接使用官方示例…

2026/7/18 22:49:46阅读更多 →
Coze与Dify对比指南:低代码AI应用开发从入门到实战

Coze与Dify对比指南:低代码AI应用开发从入门到实战

1. 从零到一:为什么你需要了解 Coze 和 Dify?如果你对 AI 应用开发感兴趣,但一看到“大模型”、“智能体”、“工作流”这些词就头疼,觉得门槛太高,那这篇文章就是为你准备的。很多开发者,包括我自己&#…

2026/7/18 14:49:24阅读更多 →
AI生图工具怎么选?2026年6月版实测对比

AI生图工具怎么选?2026年6月版实测对比

做自媒体的朋友应该都有体会:配图一直是个让人头疼的问题。2026年,AI生图工具已经非常成熟了,但工具太多反而不知道怎么选。以下是截至2026年6月我对主流AI生图工具的实测对比。Midjourney V8.1:速度之王2026年6月11日&#xff0c…

2026/7/18 18:49:35阅读更多 →