新闻详情

新闻详情

首页 / 资讯中心 / 详情

Yii 2 安装指南:Composer 与压缩包两种方式、环境校验及 Apache/Nginx 生产配置

发布时间:2026/11/4 18:29:10来源:尧图网络
Yii 2 安装指南:Composer 与压缩包两种方式、环境校验及 Apache/Nginx 生产配置
Yii 2 安装指南Composer 与压缩包两种方式、环境校验及 Apache/Nginx 生产配置【免费下载链接】yii2Yii 2: The Fast, Secure and Professional PHP Framework项目地址: https://gitcode.com/gh_mirrors/yi/yii2本指南基于 Yii 2 官方文档法语版docs/guide-fr/start-installation.md整理完整覆盖 Yii 2 框架的两种安装方式、项目模板概念、资源Assets依赖管理、安装后验证以及生产环境的 Web 服务器配置。读完本文你将能够独立完成 Yii 2 基础项目模板Basic Project Template的安装、环境检查并掌握将应用部署到 Apache 或 Nginx 的推荐配置。安装方式总览Composer 与压缩包Yii 2 提供两种安装方式使用 Composer 包管理器安装推荐方式一条命令即可安装扩展或升级 Yii便于后续维护。下载压缩包安装从官网下载归档文件手动解压适合无法使用 Composer 的环境。无论采用哪种方式标准安装都会同时下载并安装框架本体与一个项目模板Project Template。项目模板是一个可运行的 Yii 应用预置了登录、联系表单等基础功能代码按官方推荐方式组织是启动自有项目的良好起点。Yii 官方提供两种项目模板基础项目模板Basic Project Template本指南的核心对象代码组织简单适用于约 90% 的 Web 应用场景对初学者尤其友好高级项目模板Advanced Project Template更适合多团队、多层级前端/后端分离的开发环境两者主要区别在于代码组织方式。方式一通过 Composer 安装1. 安装 Composer若尚未安装 Composer在 Linux 和 macOS 上可执行curl -sS https://getcomposer.org/installer | php mv composer.phar /usr/local/bin/composerWindows 用户下载并运行Composer-Setup.exe即可。若已安装过旧版本请先执行composer self-update升级到最新版本。本指南中的命令均假设 Composer 已全局安装并可直接通过composer命令调用如果你是在本地目录使用composer.phar请相应调整命令写法。注意GitHub API 限流安装 Yii 时 Composer 需要从 GitHub API 获取大量依赖信息请求次数取决于应用依赖数量可能超过GitHub API rate limit。此时 Composer 会提示输入 GitHub 登录凭据以获取访问令牌。网络较快时更容易触发限流因此建议在安装 Yii 之前预先配置好 GitHub API 访问令牌参见 Composer 官方文档中关于 API rate limit and OAuth tokens 的说明。2. 使用 Composer 创建项目在 Web 可访问的目录下执行composer create-project --prefer-dist yiisoft/yii2-app-basic basic该命令会在basic目录中安装最新稳定版的 Yii 基础项目模板目录名可自行修改。--prefer-dist让 Composer 优先使用压缩包分发dist安装更快。如果composer create-project失败可参考 Composer 官方文档的 Troubleshooting 章节排查常见错误修复错误后在basic或你自定义的目录中执行composer update即可继续被中断的安装。提示开发版本如需安装 Yii 的最新开发版本可添加稳定性选项composer create-project --prefer-dist --stabilitydev yiisoft/yii2-app-basic basic注意开发版本不应用于生产环境因为它可能破坏现有代码。方式二通过压缩包安装从归档文件安装只需三步从 yiiframework.com 官网下载应用归档文件将归档解压到 Web 可访问的目录修改config/web.php为cookieValidationKey配置项填入一个密钥使用 Composer 安装时此步骤会自动完成// !!! insert a secret key in the following (if it is empty) - this is required by cookie validation cookieValidationKey enter your secret key here,cookieValidationKey用于对 Cookie 进行校验签名是防止 Cookie 被篡改的关键配置生产环境必须设置为随机且不可预测的密钥。其他安装选项仅安装框架、从零构建应用如果只想使用核心框架并自行搭建完整应用结构可参考 从零开始构建应用使用高级项目模板若需要更复杂的、适合团队协作的多层级应用可考虑安装 Advanced Project Template其代码组织方式与基础模板不同。安装资源AssetsCSS 与 JavaScript 库Yii 依赖 Bower。如果希望改用原生 Bower/NPM 客户端管理资源、使用 CDN或完全跳过资源安装可在composer.json中添加如下配置阻止 Composer 安装资源replace: { bower-asset/jquery: 1.11.0, bower-asset/inputmask: 3.2.0, bower-asset/punycode: 1.3.0, bower-asset/yii2-pjax: 2.0.0 },注意绕过 Composer 安装资源后你需要自行负责资源的安装与版本冲突的解决不同扩展提供的资源文件之间可能出现不一致。验证安装内置 Web 服务器与需求检查安装完成后可以先用 PHP 内置 Web 服务器快速验证而无需立即配置生产 Web 服务器。在项目根目录执行php yii serve默认监听8080端口若端口被占用或需要同时服务多个应用可指定端口php yii serve --port8888然后在浏览器访问http://localhost:8080/应看到上图所示的 Congratulations! You have successfully created your Yii-powered application. 欢迎页面。php yii serve的底层实现该命令由 ServeController 提供。从源码看其默认port 8080、docroot app/web并支持--port/-p、--docroot/-t、--router/-r三个选项见options()与optionAliases()方法。启动前它会用isAddressTaken()探测地址是否已被占用ServeController.php最终通过passthru()调用php -S启动内置服务器ServeController.php。如需从远程机器访问例如在虚拟机中运行可用0.0.0.0:8080作为监听地址。如果页面没有正常显示请检查 PHP 环境是否满足 Yii 的最低要求可通过以下任一方式校验用浏览器访问http://localhost/basic/requirements.php在命令行执行cd basic php requirements.php关于 PHP 版本要求的重要说明原安装文档撰写时要求 PHP 5.4 以上理想为 PHP 7但以当前仓库为准框架的最低要求已提升为PHP 7.3.0 或更高——这一点在 requirements.php 中有明确判定条件。此外该需求检查脚本还列出多项扩展要求其中强制mandatory项包括Reflection、PCRE、SPL、Ctype、MBString可选非强制项包括OpenSSL加密解密、Intl国际化、Yii::t()高级参数格式化、Inflector::slug()对非拉丁语系的支持等、Fileinfo文件上传 MIME 类型检测、DOMREST API 的 XML 响应格式化等requirements.php。如果应用需要数据库还需安装PDO PHP 扩展及对应数据库驱动如 MySQL 使用pdo_mysql。配置生产 Web 服务器如果只是测试 Yii 而暂不部署到生产服务器可先跳过本节。按上述说明安装的应用开箱即用可运行在 Apache 或 Nginx 之上Windows、macOS、LinuxPHP 7.3 及以上。生产环境下通常希望应用通过https://www.example.com/index.php访问而不是https://www.example.com/basic/web/index.php这要求将 Web 服务器的**文档根目录document root**指向basic/web文件夹。为什么要把文档根目录设为basic/web这样用户将无法访问与basic/web同级的私有应用代码和敏感数据文件是一种重要的安全改进。若应用运行在无法修改 Web 服务器配置的共享主机环境中可参考 共享主机环境 调整应用结构以提升安全性。另外若应用位于反向代理之后可能需要在 request 组件中配置 可信代理与请求头。关于隐藏 URL 中的index.php美化 URL / Pretty URL详见 路由与 URL 创建。推荐的 Apache 配置在httpd.conf或虚拟主机配置中使用以下配置将path/to/basic/web替换为实际路径# Configuration du dossier racine DocumentRoot path/to/basic/web Directory path/to/basic/web # 使用 mod_rewrite 支持美化 URLpretty URL RewriteEngine on # 如果请求的是真实存在的文件或目录则直接响应 RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d # 否则将所有请求转发到 index.php前端控制器 RewriteRule . index.php # 当 UrlManager 中 $showScriptName 为 false 时拒绝带脚本名的 URL 访问 RewriteRule ^index.php/ - [L,R404] # ...其他配置... /Directory关键点说明RewriteCond %{REQUEST_FILENAME} !-f/!-d静态文件与目录仍由服务器直接处理只有不存在的路径才交由index.phpRewriteRule ^index.php/ - [L,R404]配合UrlManager的showScriptName false防止用户通过显式带index.php的 URL 访问。推荐的 Nginx 配置使用 Nginx 时需以PHP-FPMFPM SAPI方式运行 PHP。将path/to/basic/web替换为实际路径、mysite.test替换为实际主机名server { charset utf-8; client_max_body_size 128M; listen 80; ## 监听 ipv4 #listen [::]:80 default_server ipv6onlyon; ## 监听 ipv6 server_name mysite.test; root /path/to/basic/web; index index.php; access_log /path/to/basic/log/access.log; error_log /path/to/basic/log/error.log; location / { # 将所有非真实文件的请求转发到 index.php try_files $uri $uri/ /index.php$is_args$args; } # 取消注释可避免 Yii 处理不存在的静态文件请求 #location ~ \.(js|css|png|jpg|gif|swf|ico|pdf|mov|fla|zip|rar)$ { # try_files $uri 404; #} #error_page 404 /404.html; # 拒绝访问 /assets 目录下的 PHP 文件 location ~ ^/assets/.*\.php$ { deny all; } location ~ \.php$ { include fastcgi.conf; fastcgi_pass 127.0.0.1:9000; #fastcgi_pass unix:/var/run/php5-fpm.sock; } location ~ /\.(ht|svn|git) { deny all; } }使用此配置时还应在php.ini中设置cgi.fix_pathinfo0以避免大量不必要的系统stat()调用、提升性能。当使用 HTTPS 时需添加fastcgi_param HTTPS on;让 Yii 能正确识别安全连接。小结至此你已经掌握了 Yii 2 的完整安装链路通过 Composer 或压缩包两种方式获得基础项目模板按需调整资源Assets的安装策略用php yii serve快速验证安装结果并通过requirements.php确认 PHP 环境满足要求当前仓库要求 PHP 7.3.0并强制依赖 Reflection、PCRE、SPL、Ctype、MBString 等扩展最后按推荐配置将应用部署到 Apache 或 Nginx。接下来即可基于模板开始编写控制器、模型与视图或参考 从零开始构建应用 搭建自定义结构的项目。【免费下载链接】yii2Yii 2: The Fast, Secure and Professional PHP Framework项目地址: https://gitcode.com/gh_mirrors/yi/yii2创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

【外设】之大彩串口显示屏 2026/11/4 15:56:54

【外设】之大彩串口显示屏

大彩串口屏初步使用 1 .官网下载 STM32 屏幕 GUI 设计资料 http://www.gz-dc.com/category/typeid/4112 找到 STM32 Keil 工程,移植相关代码因项目而异进行移植,由于项目简单,本人只对用到的指令接口进行修改。 比如:注意事项&…

阅读更多 →
无法下载Windows系统iso文件 2026/11/3 12:09:35

无法下载Windows系统iso文件

当我遇到这个问题的时候,我打开了一个网站: 登录 然后我打算下载的时候: 突然那个官方的连接就可以下载了:

阅读更多 →
【清华代码熊】DeepSeek V4.1 Flash 后训练详解 2026/11/4 17:01:23

【清华代码熊】DeepSeek V4.1 Flash 后训练详解

📌 上期解析了 DeepSeek V4.1 Flash 模型架构改进,本期解析 DeepSeek V4.1 Flash 预训练/后训练技术: 🌟 预训练:45T 文本 多模态混合语料、直接训练 sparse attention(取消 DeepSeek V4 的 dense 冷启动&…

阅读更多 →
Shuffle-R1: Efficient RL framework for Multimodal Large Language Models via Data-centric Dynamic ... 2026/11/4 12:33:12

Shuffle-R1: Efficient RL framework for Multimodal Large Language Models via Data-centric Dynamic ...

文章主要内容和创新点 主要内容 本文聚焦于多模态大语言模型(MLLM)强化学习(RL)训练中的效率问题,提出了一个名为Shuffle-R1的框架。研究发现,当前RL训练存在两个关键缺陷: 优势值坍缩(Advantage Collapsing):批次中大多数优势值集中在零附近,导致有效梯度信号被淹…

阅读更多 →
PRvL: Quantifying the Capabilities and Risks of Large Language Models for PII Redaction 2026/11/4 1:25:31

PRvL: Quantifying the Capabilities and Risks of Large Language Models for PII Redaction

一、文章主要内容总结 本文聚焦于利用大型语言模型(LLMs)实现个人身份信息(PII)脱敏的研究,旨在解决传统脱敏方法(如基于规则的系统、领域特定命名实体识别(NER)模型)泛化能力差、跨格式/跨语境适应性弱的问题。 研究通过全面评估多种LLM架构(包括密集型LLM(D-LLM…

阅读更多 →
LLaVA-RE: Binary Image-Text Relevancy Evaluation with Multimodal Large Language Model 2026/11/4 3:51:11

LLaVA-RE: Binary Image-Text Relevancy Evaluation with Multimodal Large Language Model

文章主要内容和创新点 主要内容 本文聚焦于二进制图像-文本相关性评估任务(判断图像与文本“相关”或“不相关”),针对该任务中文本格式多样、相关性定义随场景变化等挑战,提出了基于多模态大语言模型(MLLM)的解决方案LLaVA-RE。 模型设计:LLaVA-RE基于LLaVA 1.5架构,…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉