需完成两个基础前提:1.已安装配置好Nginx服务器;2.已成功部署苹果CMS程序。苹果CMS官方下载地址为https://www.maccms.com/,下载对应版本的压缩包,解压后将整个程序目录上传至服务器的Web根目录即可。
不同操作系统的Nginx配置路径不同,必须编辑对应网站的独立配置文件,禁止修改全局nginx.conf: - CentOS/RedHat系列:路径为/etc/nginx/conf.d/,找到对应网站的.conf文件; - Ubuntu/Debian系列:路径为/etc/nginx/sites-available/,若启用软链接则需修改sites-enabled下的同名文件; - Windows版Nginx:路径为安装目录下的conf\vhosts文件夹,找到对应网站的配置文件。 确认配置文件为对应网站的独立文件,避免后续站点部署混乱。
打开目标配置文件,在server块内部、location /块外部添加以下完整伪静态规则,直接复制粘贴即可适配绝大多数场景:
``` 苹果CMS核心伪静态规则 location / { if (!-e $request_filename) { rewrite ^/(.)$ /index.php?$1 last; } } 后台入口伪静态(仅需后台开启伪静态时添加) location /admin { if (!-e $request_filename) { rewrite ^/admin/(.)$ /admin/index.php?$1 last; } } API接口伪静态(仅需使用API时添加) location /api { if (!-e $request_filename) { rewrite ^/api/(.)$ /api/index.php?$1 last; } } ```特殊适配说明:若苹果CMS的入口文件不是index.php,需将规则中的index.php替换为实际入口文件名,比如入口为portal.php则改为rewrite ^/(.)$ /portal.php?$1 last;若站点部署在二级目录(如域名后带/app/),需在rewrite规则前添加二级目录路径,比如rewrite ^/app/(.)$ /app/index.php?$1 last。
修改完成后保存配置文件,执行Nginx语法检查,避免配置错误导致服务异常: - Linux系统(需root权限)执行命令:
``` nginx -t ```Windows系统需以管理员身份运行命令提示符,进入Nginx安装目录后执行命令:
``` nginx.exe -t ```若输出结果包含“test is successful”,说明配置无语法错误;若提示报错,根据终端提示修改对应内容(如漏写分号、路径错误、符号全角等)。

配置检查通过后,执行重载命令使伪静态规则生效,无需完整重启服务: - CentOS 7+/RHEL/Ubuntu 16+:systemctl reload nginx - CentOS 6:service nginx reload - Windows系统(管理员CMD):
``` nginx.exe -s reload ```访问苹果CMS的内容页,原访问地址应为http://你的域名/index.php/vod/detail/id/1.html,配置正确后会自动解析为http://你的域名/vod/detail/id/1.html,说明伪静态生效;若仍带index.php,需检查规则是否遗漏、是否应用正确的配置文件、Nginx服务是否正常启动。
问题1:配置后页面提示404 - 确认规则添加在server块内部,未放到其他location块; - 检查苹果CMS的入口文件(index.php)是否存在于Web根目录; - 若部署在二级目录,需确保rewrite规则中包含完整二级路径。
问题2:后台访问提示错误 - 若后台需单独伪静态,需确认admin块的规则已添加,且入口文件为admin/index.php; - 检查Nginx配置中是否有deny all之类的规则限制了admin目录的访问权限。
问题3:静态资源(图片/JS/CSS)加载失败 - 苹果CMS的静态资源无需伪静态,规则中的!-e $request_filename会自动跳过存在的静态文件,若仍加载失败,需检查静态资源目录(如statics)的权限是否为755、路径是否正确。
为提升网站访问速度,可在server块内补充静态资源缓存规则,直接添加到任意位置即可:
``` 静态资源缓存30天,支持浏览器复用缓存 location ~ \.(gif|jpg|jpeg|png|css|js|ico)$ { expires 30d; add_header Cache-Control "public, immutable"; } ```补充后需再次执行nginx -t语法检查和重载命令,优化即可生效。
易频IT社区是综合性互联网IT技术门户网站,专注分享网络技术、服务器运维、网络安全、编程开发、系统架构、云计算、大数据等行业干货,实时更新IT行业资讯、零基础教程、实战案例,为IT从业者、技术爱好者提供专业的学习交流平台。
Copyright © 2021-2026 易频IT社区. All Rights Reserved. 备案号:闽ICP备2023013482号 网站地图