phpStudy V8.1 不支持 IIS 模式,仅内置 Apache 和 Nginx;所谓“IIS模式”是误解,IIS 为 Windows 独立服务,与 phpStudy 无关;需通过 Apache 的 Alias 或 Nginx 的 location 实现子路径虚拟目录效果。

phpStudy V8.1 不支持 IIS 模式,它只内置 Apache 和 Nginx 两种 Web 服务器,**根本不存在“IIS模式”这个选项**。如果你在面板里看到“切换服务器”,可选的只有 Apache 或 Nginx;IIS 是 Windows 自带的独立服务,与 phpStudy 完全无关,也不能被 phpStudy 管理或集成。
所以,“phpStudy V8.1 IIS模式创建PHP虚拟目录”这个需求本身是矛盾的——你无法在 phpStudy 里配置 IIS,更不能用它创建 IIS 的虚拟目录。
为什么你会看到“IIS”相关关键词?
常见混淆点有三个:
- 你的系统已安装 IIS,且占用了
80端口,导致 phpStudy 启动失败,于是你去查“IIS 占用端口”,误以为 phpStudy 支持 IIS; - 某些老教程把“Windows + IIS + PHP”和“Windows + phpStudy”混为一谈,标题写错,内容实际讲的是纯 IIS 配置;
- 你真正想要的是“在 phpStudy 里添加类似 IIS 虚拟目录效果的子路径站点”,比如
http://localhost/api/指向另一个项目目录——但这靠的是 Apache/Nginx 的别名(Alias)或子域名,不是 IIS 虚拟目录。
在 phpStudy V8.1 中实现“虚拟目录”等效功能
如果你的目标是让一个子路径(如 /admin 或 /v2)指向独立的 PHP 项目目录,而不是整个站点根目录,有两条可行路径:
- 用「虚拟主机」+ 子域名:比如建
admin.test.local,根目录设为D:\projects\admin,然后在系统hosts文件加一行127.0.0.1 admin.test.local; - 用 Apache 的
Alias指令(仅限 Apache 模式):编辑D:\phpstudy_pro\Extensions\apache\conf\extra\httpd-vhosts.conf,在对应<VirtualHost>块内加:<IfModule alias_module><br> Alias /admin "D:/projects/myadmin"<br> <Directory "D:/projects/myadmin"><br> Require all granted<br> AllowOverride All<br> </Directory><br></IfModule>
注意路径用正斜杠、盘符大写、末尾不加斜杠; - 用 Nginx 的
location块(仅限 Nginx 模式):编辑D:\phpstudy_pro\Extensions\nginx\conf\vhost\your-site.conf,加:location /api {<br> alias D:/projects/api/;<br> index index.php;<br> try_files $uri $uri/ /api/index.php?$query_string;<br>}注意alias路径末尾必须有斜杠,且try_files要适配框架入口逻辑。
Apache 下启用 Alias 模块容易踩的坑
默认 phpStudy V8.1 的 Apache 并未启用 mod_alias,直接写 Alias 会报错 Invalid command 'Alias':
- 打开
D:\phpstudy_pro\Extensions\apache\conf\httpd.conf; - 找到
#LoadModule alias_module modules/mod_alias.so这行,删掉开头的#取消注释; - 确保
Include conf/extra/httpd-vhosts.conf这行未被注释; - 重启 Apache,否则修改不生效;
- 如果子路径下跑 ThinkPHP/Laravel,
try_files或FallbackResource必须显式配置,否则路由 404。



















