Mod rewrite 愚蠢的404页面使用?

Mod rewrite 愚蠢的404页面使用?,mod-rewrite,url-rewriting,Mod Rewrite,Url Rewriting,好的,所以我知道的唯一方法是改变链接以不显示文件扩展名 这是yourwebsite.com/customlink.php到yourwebsite.com/customlink 正在创建一个名为customlink的文件夹,并将索引文件推入其中。或者创建一个404页面,在URL周围窥探并获取最后一个/后面的任何字符串,并尽一切努力显示正确的内容 我的问题是,这种解决问题的方法是否完全是白痴?我这样做是因为在我看来它节省了空间,让我解释一下:每个需要自定义链接的页面都与从其他地方获取的一些位和内容相

好的,所以我知道的唯一方法是改变链接以不显示文件扩展名

这是
yourwebsite.com/customlink.php
yourwebsite.com/customlink

正在创建一个名为
customlink
的文件夹,并将索引文件推入其中。或者创建一个404页面,在URL周围窥探并获取最后一个
/
后面的任何字符串,并尽一切努力显示正确的内容

我的问题是,这种解决问题的方法是否完全是白痴?我这样做是因为在我看来它节省了空间,让我解释一下:每个需要
自定义链接的页面都与从其他地方获取的一些位和内容相同,因此,我不需要创建X个包含主文件的文件夹和索引文件,而只需要一个404文件就可以处理它


如果这真的很愚蠢,我提前道歉。

更常见的方法是使用
中的
mod_rewrite
将所有HTTP请求路由到单个
index.php

然后,index.php根据请求的资源输出适当的文件,不管它是从数据库生成的还是嵌套在其他文件夹中的


除了“未找到文件”实例之外,使用404页面(错误页面)可能不是一个好主意。

更常见的方法是在
.htaccess
中使用
mod_rewrite
将所有HTTP请求路由到单个
index.php

然后,index.php根据请求的资源输出适当的文件,不管它是从数据库生成的还是嵌套在其他文件夹中的


除了“找不到文件”实例之外,使用404页面(错误页面)可能不是一个好主意。

由于您没有提到页面运行在哪台服务器上(Apache、IIS等),所以我假设使用Apache

将包含以下内容的.htaccess文件放入站点的根目录中:

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)$ $1.php
它将在内部重写所有内容,而不扩展相应的php文件,前提是:

  • 请求不是有效的目录
  • 实际上存在一个具有php扩展名的文件

由于您没有提到您的页面运行在哪台服务器上(Apache、IIS等等),所以我假设您使用的是Apache

将包含以下内容的.htaccess文件放入站点的根目录中:

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^(.*)$ $1.php
它将在内部重写所有内容,而不扩展相应的php文件,前提是:

  • 请求不是有效的目录
  • 实际上存在一个具有php扩展名的文件

我认为这个标签根本不正确。正确的方法是让多视图完成它们的工作(可能有副作用),或者使用mod_rewrite。或者,在Apache2.4中。错误地使用404错误文档可能会使错误日志中充斥404消息。我认为这可能是重复的。正确的方法是让多视图完成它们的工作(可能有副作用),或者使用mod_rewrite。或者,在Apache2.4中。错误地使用404错误文档可能会使错误日志中充斥404消息。可能会重复