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

404使用.htaccess重写url后出现错误,.htaccess,.htaccess,我正在我的网站中使用url重写 我有以下网址: 有效 example.com/_new/app/planning example.com//u new/app/user\u info 不起作用(404) example.com/_new/try example.com//u new/features 以下是我的规则: RewriteEngine On # Removing extension RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^

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

我有以下网址:

有效
example.com/_new/app/planning
example.com//u new/app/user\u info

不起作用(404)
example.com/_new/try
example.com//u 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.php
index.php
应显示为
example.com/try
example.com/login

app.php
从另一个目录加载模块。这个应该是:
example.com/app/module\u name


有什么问题吗


谢谢。

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


在尝试使用URL之前,请确保测试您的正则表达式,您可以从中受益以进行测试。

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


在尝试使用URL之前,请确保测试您的正则表达式,您可以从中受益。没有规则处理
/\u new/
,您认为应该如何处理?没有规则处理
/\u new/
,您认为应该如何处理?您需要创建一个能够很好地找到文件的正则表达式,我不知道你的文件夹结构或命名文件的方式,以便为你提供一个解决问题的正则表达式你好,我添加了更多信息和目录结构。现在可以帮助更多了吗?请将第一条规则移到文件末尾,你应该可以了。你需要创建一个正则表达式来查找你的文件。我不知道你的文件夹结构或你命名文件的方式,以便为你提供一个正则表达式来解决你的问题你好,我添加了更多信息和目录结构。现在可以帮助更多人了吗?请将第一条规则移到文件末尾,您应该可以了。