
NeuraVision 提供的功能
NeuraVision 是一款 AI 内容生成产品的后端引擎。本仓库包含会员仪表盘、后端 API、身份验证,以及自托管分析和流量分配跟踪器的服务器端逻辑。
此导出仅包含代码。不包含落地页、营销内容、媒体、仪表盘资源、环境文件、数据库或用户提交的文件。
项目结构
主要目录分别对应特定的后端职责:
api/包含用于下载、生成请求、OAuth 和计费的后端端点。functions/提供用于身份验证、电子邮件、短信、验证码和评论的共享 PHP 辅助函数。lk/包含会员仪表盘后端逻辑。auth/、auth.php、register.php和logout.php实现登录、注册以及 Google 或 Twitter OAuth 流程。chat/包含客服聊天小组件后端。data/包含用于营销活动发送和 CAPI 中继的定时任务。a/包含自托管分析收集器和地理位置查询逻辑。PHPMailer/包含随项目提供的邮件库。
如需按子系统了解详细说明,请参阅ENGINE.md。该文件说明哪些部分是可运行的引擎组件,哪些部分仅用于演示或获取潜在客户。
要求与配置
NeuraVision 运行于PHP 7.4 或更高版本,并部署在 nginx 或 Apache 后方。它使用 SQLite 存储数据,无需构建步骤。
配置通过环境变量提供。仓库包含.env.example,其中记录了预期设置,包括广告平台、SMTP 或 Resend、hCaptcha 以及 Telegram 机器人所需的服务凭据。
空配置键会停用相关功能,因此你只需配置部署所需的服务。请勿将实际的.env文件或 API 凭据提交到源代码管理系统。
安装与初始设置
- 在服务器或开发机器上获取仓库。
- 将示例配置文件复制为本地环境文件:
cp .env.example .env- 打开
.env,填写计划使用的各子系统所需的键。请参考ENGINE.md以及代码中的getenv(...)调用,以确定相关变量名称。 - 从项目目录启动 PHP 内置开发服务器:
php -S 127.0.0.1:8000部署时,请将 PHP-FPM 以及 nginx 或 Apache 指向项目文件夹,而不要使用内置开发服务器。
SQLite 存储
应用收到第一个请求时,会自动创建data/下的 SQLite 数据库。每个模块都使用CREATE TABLE IF NOT EXISTS,因此设置过程中无需单独导入架构。
生成的数据库可能包含用户账户、跟踪器事件和评论等应用数据。数据库文件不包含在仓库导出中,应作为部署数据而非源代码进行管理。
基本用法
在本地启动后端
配置环境后,启动本地服务器:
php -S 127.0.0.1:8000然后通过本地地址访问应用,并根据配置使用可用的身份验证、仪表盘、API、聊天或分析流程。
配置身份验证
设置 Google 或 Twitter 登录所需的 OAuth 相关环境变量。身份验证入口包括auth/、auth.php、register.php和logout.php。如果某个提供商不属于你的部署范围,请将其可选凭据留空。
启用基于服务的功能
仅配置所需的集成。例如,邮件发送需要相应的 SMTP 或 Resend 设置,而验证码、Telegram、广告平台和 CAPI 功能需要各自的凭据。缺少或为空的键会使这些可选功能保持停用状态。
高级配置与运维
将配置映射到子系统
不要将每个环境变量都视为必需项。先从.env.example开始,然后使用ENGINE.md确定哪些键属于 API、身份验证、定时任务、分析收集器或通信功能。这样可以使部署保持精简,并让故障排查更有针对性。
了解仅包含代码的导出内容
该仓库有意排除了会员仪表盘的视觉资源,包括图片、视频、CSS 和 JavaScript。同时也排除了落地页和法律页面、媒体、字体、国际化文案、上传文件、聊天会话、聊天恢复数据、OAuth 状态文件和 SQLite 数据库。将引擎集成到完整产品时,请计划单独提供或保留这些资源。
使用正确的托管模式
使用php -S进行本地测试。在服务器部署中,请通过 PHP-FPM 将 PHP 应用运行在 nginx 或 Apache 后方,并通过服务器配置提供环境变量,而不是将密钥硬编码到仓库中。
上线前检查功能状态
项目文档区分了真正可运行的引擎组件与演示或仅用于获取潜在客户的功能。在生产环境依赖某个子系统之前,请先查看ENGINE.md,尤其是在规划围绕生成请求、计费、分析或定时任务的集成时。
结语
NeuraVision 提供 PHP 7.4+ 后端、SQLite 存储、基于环境的配置、身份验证、API、仪表板逻辑、通信功能、定时任务以及自托管分析功能。开始使用时,请复制 .env.example,配置所需的服务,启动 PHP 服务器进行本地测试,并让应用在首次请求时创建 SQLite 数据表。使用 ENGINE.md 了解子系统边界和部署准备情况。
