phpstudy 8.1默认使用nginx,伪静态需手动编辑站点vhost.conf中的location /块,配合框架开启url_route_on等路由配置才能生效,不依赖.htaccess。

phpStudy 8.1 默认使用 Nginx 作为主 Web 服务器(可切换 Apache),伪静态配置方式与旧版有明显区别。重点不是改 .htaccess,而是直接编辑站点的 Nginx 配置文件,并配合框架自身设置才能生效。
确认当前使用的服务器类型
打开 phpStudy 8.1 → 左侧「网站」→ 找到你的站点 → 点击「管理」→ 查看顶部状态栏:显示「Nginx」还是「Apache」。绝大多数新版默认为 Nginx,以下以 Nginx 为主说明;若用 Apache,请跳至最后小节。
在 Nginx 下配置伪静态(推荐方式)
phpStudy 8.1 的伪静态不依赖 .htaccess,必须手动修改站点专属的 Nginx 配置:
- 在「网站」列表中,点击目标站点后的【管理】→ 【配置文件】→ 选择「vhost.conf」或「nginx.conf」(实际文件名可能为
yourdomain.conf) - 找到
location / { ... }块,将其整体替换为适配你框架的规则。常见示例如下:
通用 PHP 路由(如自定义入口):
location / {
if (!-e $request_filename) {
rewrite ^(.*)$ /index.php?s=$1 last;
}
}
ThinkPHP 6/7(需 public 为运行目录):
location / {
if (!-e $request_filename) {
rewrite ^(.*)$ /index.php?s=$1 last;
}
}
Laravel / CodeIgniter 等(兼容 PATH_INFO):
location / {
try_files $uri $uri/ /index.php?$query_string;
}
保存文件后,点击 phpStudy 右上角「重启全部服务」或单独重启 Nginx。
框架层必须同步开启路由支持
仅改 Nginx 不够,框架本身需启用 URL 重写功能:
-
ThinkPHP:确保
config/app.php中'url_route_on' => true,'url_html_suffix' => '','pathinfo_depr' => '/' -
Laravel:确认
public/.htaccess存在(Nginx 下不生效,但 Laravel 官方 Nginx 规则已覆盖),且 APP_DEBUG 关闭时仍能正常解析路由 -
WordPress:在后台「设置 → 固定链接」中任意切换一次并保存,触发
.htaccess重写(Nginx 下该文件无作用,但此操作会刷新内部重写标记)
Apache 用户补充说明
若你已切换回 Apache 模式:
- 进入「其他选项菜单」→ 「PHP扩展及设置」→ 「Apache扩展」→ 启用
rewrite_module - 打开
httpd.conf,搜索AllowOverride None,全部替换为AllowOverride All - 在网站根目录新建
.htaccess文件,内容类似:
<ifmodule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]
</ifmodule>
保存后重启 Apache 即可。
php免费学习视频:立即使用
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!











