静态化将动态页面转化为HTML文件,直接由Web服务器(如Nginx)提供,无需经过PHP解析和数据库查询,能显著降低服务器负载并大幅提升页面访问速度。在配置前,请确保已完成以下操作:
登录EyouCMS后台,依次进入“系统” -> “系统设置” -> “核心设置”。
在“站点根网址”中,请填写你的网站完整域名(例如:https://www.yourdomain.com),确保以“/”结尾。这是静态化生成文件路径的基础。
找到“是否生成静态”选项,选择“是”。
配置完成后,点击页面底部的“确定”按钮保存所有设置。
这是实现用户访问时自动指向静态HTML文件的关键步骤。你需要编辑Nginx的站点配置文件(通常位于 /usr/local/nginx/conf/vhost/yourdomain.conf 或类似路径)。
在“server { }”配置块内,找到处理PHP请求的location段,在其之前添加以下规则:
``` location / { try_files $uri $uri/ /html$uri.html /html$uri/index.html @php_proxy; } ```确保原有的PHP处理location配置类似如下(用作上述规则未找到静态文件时的后备处理):
``` location @php_proxy { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } ```
修改保存后,执行命令 nginx -s reload 平滑重启Nginx使配置生效。
配置生效后,需要手动触发全站内容生成静态文件。
进入后台“内容” -> “栏目管理”。在栏目列表页,点击右上角的“批量更新栏目页”按钮。系统将开始为所有栏目生成列表页静态文件。完成后,同样位置点击“更新首页”按钮。
进入“内容” -> “文档管理”。在列表左上角,使用筛选功能选择需要生成的文档范围(例如“所有栏目”),然后点击列表上方的“生成静态”按钮。对于内容量大的站点,请分批操作。
为保障静态文件与数据库同步,可以设置服务器定时任务。通过SSH登录服务器,执行 crontab -e 命令,添加如下行(假设你的EyouCMS安装在 /www/wwwroot/yourdomain 目录):
``` /30 cd /www/wwwroot/yourdomain && php think generate index 0 2 cd /www/wwwroot/yourdomain && php think generate all ```第一行表示每30分钟重新生成首页静态文件。第二行表示每天凌晨2点尝试重新生成全站静态文件(仅当内容有变化时才会实际生成)。请根据你的服务器PHP命令路径和网站目录调整。
这通常是因为Nginx的try_files规则未生效或位置不对。确保该规则放置在处理PHP的location规则之前,并且没有其他location规则(如“location ~ .php$”)优先匹配了请求。
检查网站根目录及“html”目录的所属用户和组。对于LNMP/LAMP环境,通常需要将目录所有者设为www用户(或nginx用户)。例如:
``` chown -R www:www /www/wwwroot/yourdomain chmod -R 755 /www/wwwroot/yourdomain/html ```执行上述操作后,再次尝试生成静态文件。












易频IT社区是综合性互联网IT技术门户网站,专注分享网络技术、服务器运维、网络安全、编程开发、系统架构、云计算、大数据等行业干货,实时更新IT行业资讯、零基础教程、实战案例,为IT从业者、技术爱好者提供专业的学习交流平台。
Copyright © 2021-2026 易频IT社区. All Rights Reserved. 备案号:闽ICP备2023013482号 网站地图