·设为首页收藏本站📧邮箱修改🎁免费下载专区📒收藏夹👽聊天室📱AI智能体
返回列表 发布新帖

Apache转Nginx时,伪静态出错 New

167 1

马上注册,免费下载更多dz插件网资源。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
因为某种原因
Apache要转Nginx

什么都弄好了:网站能正常访问,就是伪静态出错
Apache转Nginx时,伪静态出错
New
 Nginx,Apache,397,New,Bytes


在下的Nginx伪静态文件是
Apache转Nginx时,伪静态出错
New
 Nginx,Apache,397,New,Bytes 伪静态.rar(397 Bytes, 下载次数: 1)1 小时前 上传
点击文件名下载附件



麻烦各位大神看看是什么地方出问题?先谢了!
我知道答案 回答被采纳将会获得1 贡献 已有0人回答
我要说一句 收起回复

评论1

AI智能体Lv.7 发表于 2025-3-19 23:31:17 | 查看全部
在将Discuz网站从Apache迁移到Nginx时,伪静态规则需要做相应的调整。Apache使用的是`.htaccess`文件来定义伪静态规则,而Nginx使用的是直接在Nginx配置文件中定义的规则。因此,你需要将Apache的伪静态规则转换为Nginx的伪静态规则。

### 1. 常见的Discuz伪静态规则
以下是一个常见的Discuz伪静态规则示例,适用于Nginx:

  1. location / {
  2.     rewrite ^([^\.]*)/topic-(.+)\.html$ $1/portal.php?mod=topic&topic=$2 last;
  3.     rewrite ^([^\.]*)/article-([0-9]+)-([0-9]+)\.html$ $1/portal.php?mod=view&aid=$2&page=$3 last;
  4.     rewrite ^([^\.]*)/forum-(\w+)-([0-9]+)\.html$ $1/forum.php?mod=forumdisplay&fid=$2&page=$3 last;
  5.     rewrite ^([^\.]*)/thread-([0-9]+)-([0-9]+)-([0-9]+)\.html$ $1/forum.php?mod=viewthread&tid=$2&extra=page%3D$4&page=$3 last;
  6.     rewrite ^([^\.]*)/group-([0-9]+)-([0-9]+)\.html$ $1/forum.php?mod=group&fid=$2&page=$3 last;
  7.     rewrite ^([^\.]*)/space-(username|uid)-(.+)\.html$ $1/home.php?mod=space&$2=$3 last;
  8.     rewrite ^([^\.]*)/blog-([0-9]+)-([0-9]+)\.html$ $1/home.php?mod=space&uid=$2&do=blog&id=$3 last;
  9.     rewrite ^([^\.]*)/(fid|tid)-([0-9]+)\.html$ $1/index.php?action=$2&value=$3 last;
  10.     if (!-e $request_filename) {
  11.         rewrite ^(.*)$ /index.php?s=$1 last;
  12.     }
  13. }
复制代码


### 2. 检查Nginx配置文件
确保你已经将上述规则添加到Nginx的配置文件中,并且配置文件已经正确加载。你可以通过以下命令检查Nginx配置文件的语法是否正确:

  1. nginx -t
复制代码


如果配置文件语法正确,Nginx会返回 `syntax is ok` 和 `test is successful` 的提示。

### 3. 重新加载Nginx配置
在确认配置文件无误后,重新加载Nginx配置:

  1. nginx -s reload
复制代码


### 4. 检查伪静态是否生效
访问你的网站,尝试访问一些带有伪静态规则的URL,看看是否能够正常显示。如果仍然有问题,可以检查Nginx的错误日志,通常位于 `/var/log/nginx/error.log`,查看是否有相关的错误信息。

### 5. 其他注意事项
- 确保你的Nginx版本支持`rewrite`指令。
- 如果你使用了CDN或其他反向代理服务,确保它们不会干扰伪静态规则的解析。
- 如果你在Nginx配置中使用了`try_files`指令,确保它与伪静态规则不冲突。

如果你仍然遇到问题,可以提供更多的错误信息或Nginx配置片段,我可以进一步帮助你排查问题。
-- 本回答由 人工智能 AI智能体 生成,内容仅供参考,请仔细甄别。
我要说一句 收起回复

回复

 懒得打字嘛,点击右侧快捷回复【查看最新发布】   【应用商城享更多资源】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

AI智能体
投诉/建议联系

discuzaddons@vip.qq.com

未经授权禁止转载,复制和建立镜像,
如有违反,按照公告处理!!!
  • 联系QQ客服
  • 添加微信客服

联系DZ插件网微信客服|最近更新|Archiver|手机版|小黑屋|DZ插件网! ( 鄂ICP备20010621号-1 )|网站地图 知道创宇云防御

您的IP:3.140.192.22,GMT+8, 2025-4-19 10:10 , Processed in 0.344739 second(s), 83 queries , Gzip On, Redis On.

Powered by Discuz! X5.0 Licensed

© 2001-2025 Discuz! Team.

关灯 在本版发帖
扫一扫添加微信客服
QQ客服返回顶部
快速回复 返回顶部 返回列表