【问题标题】:Change links type from .php?id= to html将链接类型从 .php?id= 更改为 html
【发布时间】:2018-08-11 04:57:37
【问题描述】:

我有一个文件托管和共享 PHP 脚本,它使用基本类型的链接,当文件上传后,文件的基本链接将是: http://example.com/do.php?id=1

注意 (1) 是文件 ID。

现在脚本有一个功能,可以使用 HTML 链接类型启用 mod 重写.. 当激活它时.. 上面的链接将是这样的: http://example.com/download1.html

现在,需要编辑 htaccess 文件以将链接更改为另一个形状。所以我想要做的是使上面的链接看起来像: http://example.com/filename_FileID.html 要么 http://example.com/FileID.html 要么 http://example.com/filename_RandomCharectars&numbers.html

我不知道该怎么做..请帮我编辑我的 htaccess..

这是当前的 htaccess 文件:

RewriteRule ^download([0-9]*).html$ do.php?id=$1
RewriteRule ^downloadf-(.*)-([a-zA-Z0-9_-]*).html$ do.php?filename=$1&x=$2
RewriteRule ^down-([0-9]*).html$ do.php?down=$1
RewriteRule ^downf-(.*)-([a-zA-Z0-9_-]*).html$ do.php?downf=$1&x=$2
RewriteRule ^downex-([0-9]*).html$ do.php?down=$1
RewriteRule ^downexf-(.*)-([a-zA-Z0-9_-]*).html$ do.php?downexf=$1&x=$2

【问题讨论】:

    标签: php apache .htaccess webserver httpd.conf


    【解决方案1】:

    对于http://example.com/FileID.html(我假设“FileID”将是一个数值)

    规则是

    RewriteRule ^([0-9]*)\.html$ do.php?id=$1
    

    对于http://example.com/filename_FileID.html 规则是

    RewriteRule ^filename_([0-9]*)\.html$ do.php?id=$1
    

    对于http://example.com/filename_RandomCharectars&numbers.html 规则是

    RewriteRule ^filename_(.*)\.html$ do.php?id=$1
    

    【讨论】:

    • 谢谢你的回答..但我想要$filename而不是filename_ ...它会自动替换为原始文件名..顺便说一下,会生成多少个随机字符规则:RewriteRule ^filename_([a-zA-Z0-9]*).html$ do.php?id=$1
    • 我已经编辑了最后一条规则以获得更好的结果,可以多次处理任何字符。我不明白您评论的这一部分“但我想要 $filename 而不是 filename_”。你能澄清一下吗?
    猜你喜欢
    • 2015-12-15
    • 2020-02-24
    • 1970-01-01
    • 1970-01-01
    • 2014-04-10
    • 1970-01-01
    • 2013-09-03
    • 2015-08-21
    • 1970-01-01
    相关资源
    最近更新 更多