You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PHP Smarty CMS站点迁移到XAMPP本地后子页面全部返回404如何解决?

问题解决思路

  • 开启Apache的rewrite模块
    打开XAMPP控制面板,点击Apache右侧的「Config」按钮,选择httpd.conf配置文件,找到LoadModule rewrite_module modules/mod_rewrite.so这一行,删除行首的#注释符,保存文件后重启Apache服务。
  • 确认站点根目录存在.htaccess伪静态规则文件
    从FTP下载文件时,Linux服务器上.开头的隐藏文件默认不会被显示,很可能漏下了原站点的.htaccess规则。你可以联系原开发者索要对应规则文件,放到本地站点根目录C:\xampp\htdocs\netcomplex-1下。如果暂时无法获取,可以先尝试通用的CMS伪静态规则,将所有请求转发到index.php处理:
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteBase /netcomplex-1/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]
</IfModule>
  • 修改配置文件中的站点路径匹配本地环境
    你当前配置里的站点URL默认用了https,且未带上子目录路径,会导致路由解析错误。将配置文件中对应部分修改为:
$conf['site_url'] = 'http://localhost/netcomplex-1';
$conf['site_url_static'] = 'http://localhost/netcomplex-1';
$conf['site_url_orig'] = 'http://localhost/netcomplex-1';
  • 验证路由配置是否生效
    尝试直接访问带index.php的子页地址http://localhost/netcomplex-1/index.php/kontakt,如果可以正常访问,即可确认是伪静态规则未生效导致的404问题。

额外说明

如果需要查询PHP版本,在站点根目录新建phpinfo.php文件,写入内容<?php phpinfo(); ?>,访问http://localhost/netcomplex-1/phpinfo.php即可查看完整的PHP版本、扩展启用情况等信息。

内容的提问来源于stack exchange,提问作者Michał Chęciński

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 09:42:00