【问题标题】:Using slash symbol beside filename?在文件名旁边使用斜杠符号?
【发布时间】:2011-10-04 23:29:15
【问题描述】:

是否可以让我的网站接受文件名后的斜杠并将斜杠作为 url 的结尾

举个例子:

http://example.com/files/file.php

这会正常加载

我也希望它通过这个加载: http://example.com/files/file.php/whateverhere

只是忽略 .php 之后的所有内容,所以它不会给出未找到的错误

【问题讨论】:

  • 这取决于您使用的服务器
  • 你在 apache 上吗?你有安装 mod_rewrite 吗?
  • 我不拥有服务器,我只是在其中托管,告诉我方法,我会尝试

标签: url


【解决方案1】:

在您的 DocumentRoot 中添加一个 .htaccess 并包含以下内容:

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase     /
    RewriteRule     ^(.*).php/(.*)$     $1.php  [L]
</IfModule>

这将丢弃.php 之后的所有内容。如果您想将其作为 GET 查询字符串的一部分传递,请将规则更改为:

RewriteRule     ^(.*).php/(.*)$     $1.php?foo=$2  [L]

【讨论】:

  • 嗨,谢谢你的帮助,我按照你说的做了,但一开始我没有工作,我用谷歌搜索它在 godaddy 主机上不起作用,一篇帖子说使用这个代码:选项 +FollowSymLinks 我做了并且它工作但不是那么好首先它将我重定向到网站主页而不是我请求的文件其次它只允许在文件旁边写入斜杠( / ),不允许 / 之后的任何内容..像:website.com/file.php/ 这会加载 website.com 而不是 file.php,而这:website.com/file.php/whatever 这给了我一个错误:没有指定输入文件。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-04-19
  • 2018-09-21
  • 2013-06-02
  • 2014-10-01
相关资源
最近更新 更多