使用 .htaccess 重写 url 后出现 404 错误

调频

我在我的网站中使用 url 重写。

我有这些网址:

有效
example.com/_new/app/planning
example.com/_new/app/user_info

无效 (404)
example.com/_new/try
example.com/_new/features


这是我的规则:

RewriteEngine On

# Removing extension
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^([^\.]+)$ $1.php [NC,L]

# example.com/app/[module]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^app/([^/]+)$ app.php?param1=$1 [L]

# example.com/app/[module]/[action]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^app/([^/]+)/([^/]+)$ app.php?param1=$1&param2=$2 [L]

# example.com/app/[module]/[action]/[type]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^app/([^/]+)/([^/]+)/([^/]+)$ app.php?param1=$1&param2=$2&param3=$3 [L]

# example.com/app/[module]/[action]/[type]/[id]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^app/([^/]+)/([^/]+)/([^/]+)/([^/]+)$ app.php?param1=$1&param2=$2&param3=$3&param4=$4 [L]

这里的文件结构:

/_new/
/_new/try.php
/_new/login.php
/_new/app.php

try.phpindex.php应显示为example.com/tryexample.com/login

app.php载荷从另一个目录模块。这个应该是:example.com/app/module_name


有什么问题 ?

谢谢。

什么时候

在 中htaccess,基本 URLexample.com将在匹配中被跳过,而在您的文件中,第一个正则表达式([^\.]+)将匹配/_new/try并尝试将您重定向到一个/_new/try.php不存在的文件,因此是 404。

在尝试使用 URL 之前,请确保测试您的正则表达式,您可以从https://regex101.com/进行测试。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

重定向404错误htaccess后重写URL

来自分类Dev

htaccess重写URL错误

来自分类Dev

在htaccess中重写URL后没有404

来自分类Dev

使用 .htaccess 和 404 原始路径重写 URL

来自分类Dev

使用htaccess重写URL

来自分类Dev

使用HttpModule重写URL时,路径中出现HTTP 404或非法字符错误

来自分类Dev

使用URL重写进行重定向时出现404错误

来自分类Dev

使用HttpModule重写URL时,路径中出现HTTP 404或非法字符错误

来自分类Dev

简单的htaccess重写规则错误404

来自分类Dev

.htaccess链接重写将返回404错误

来自分类Dev

htaccess重写错误和404

来自分类Dev

简单的htaccess重写规则错误404

来自分类Dev

使用.htaccess重写URL时出现问题

来自分类Dev

尝试在 php 中使用 .htaccess 创建漂亮的 url 时出现错误 404

来自分类Dev

使用.htaccess自动重写URL?

来自分类Dev

如何使用.htaccess重写URL

来自分类Dev

对URL使用htaccess重写规则

来自分类Dev

如何使用.htaccess重写URL

来自分类Dev

使用.htaccess重写部分url

来自分类Dev

如何使用 htaccess 重写 url

来自分类Dev

如何使用WildFly / JBOSS 16配置URL重定向?(重写规则),已部署的Angular应用出现404“未找到”错误

来自分类Dev

更新了htaccess中的重写规则,在Google Web Master工具中出现错误404

来自分类Dev

URL重写不断返回404错误

来自分类Dev

WordPress的URL重写规则产生404错误

来自分类Dev

提交表单并重写url后出现错误回显

来自分类Dev

重写规则,在xampp上出现404错误

来自分类Dev

使用.htaccess设置某些文件类型的Web服务器处理404错误(ErrorDocument 404 +重写规则)

来自分类Dev

使用.htaccess为某些文件类型设置Web服务器处理404错误(ErrorDocument 404 +重写规则)

来自分类Dev

当我使用htaccess时出现404错误

Related 相关文章

  1. 1

    重定向404错误htaccess后重写URL

  2. 2

    htaccess重写URL错误

  3. 3

    在htaccess中重写URL后没有404

  4. 4

    使用 .htaccess 和 404 原始路径重写 URL

  5. 5

    使用htaccess重写URL

  6. 6

    使用HttpModule重写URL时,路径中出现HTTP 404或非法字符错误

  7. 7

    使用URL重写进行重定向时出现404错误

  8. 8

    使用HttpModule重写URL时,路径中出现HTTP 404或非法字符错误

  9. 9

    简单的htaccess重写规则错误404

  10. 10

    .htaccess链接重写将返回404错误

  11. 11

    htaccess重写错误和404

  12. 12

    简单的htaccess重写规则错误404

  13. 13

    使用.htaccess重写URL时出现问题

  14. 14

    尝试在 php 中使用 .htaccess 创建漂亮的 url 时出现错误 404

  15. 15

    使用.htaccess自动重写URL?

  16. 16

    如何使用.htaccess重写URL

  17. 17

    对URL使用htaccess重写规则

  18. 18

    如何使用.htaccess重写URL

  19. 19

    使用.htaccess重写部分url

  20. 20

    如何使用 htaccess 重写 url

  21. 21

    如何使用WildFly / JBOSS 16配置URL重定向?(重写规则),已部署的Angular应用出现404“未找到”错误

  22. 22

    更新了htaccess中的重写规则,在Google Web Master工具中出现错误404

  23. 23

    URL重写不断返回404错误

  24. 24

    WordPress的URL重写规则产生404错误

  25. 25

    提交表单并重写url后出现错误回显

  26. 26

    重写规则,在xampp上出现404错误

  27. 27

    使用.htaccess设置某些文件类型的Web服务器处理404错误(ErrorDocument 404 +重写规则)

  28. 28

    使用.htaccess为某些文件类型设置Web服务器处理404错误(ErrorDocument 404 +重写规则)

  29. 29

    当我使用htaccess时出现404错误

热门标签

归档