【问题标题】:htaccess rewrite,remove stringhtaccess 重写,删除字符串
【发布时间】:2012-10-11 10:09:34
【问题描述】:

我想创建一个用于检查 colorhex 代码的 php 网站, 现在我在检查代码时遇到了一个问题, 我的脚本是

<?php
echo'
<html><head><style>
body{
background-color:#'.$_GET['c'].';
}
</style></head><body></body></html>';
?>

然后我输入网址http://example.com/?c=FF0000 会将背景颜色显示为红色,但我想通过修改 htaccess 文件来隐藏 ?c=,我已经用谷歌搜索并尝试过,但没有人工作,有人知道该怎么做吗?

【问题讨论】:

  • POST代替GET怎么样?
  • 这个问题在当前状态下没有意义。您必须对其进行编辑并添加更多信息以供我们理解:当然可以在此处使用重写,但是您必须以某种方式交出要显示的颜色。所以如果不是作为查询参数,你还想怎么做呢?可能是这样:http://site.com/FF0000 或通过发布值?
  • 我想做一个类似的网站:colorhexa.com/33b5e5
  • 查看mod-rewrite 了解一些操作方法。在您的情况下,这微不足道
  • 是的,我想让site.com/FF0000,also这样的网址有一个输入框,用于在主页输入十六进制代码

标签: php .htaccess colors hex


【解决方案1】:

服务器配置或 .htaccess 文件中的类似内容:

RewriteEngine on
RewriteRule ^([a-zA-Z0-9]{6})$ index.php?c=$1 [L]

如果您在重写时遇到问题,使用 apaches 重写模块带来的登录工具总是一个好主意。阅读有关RewriteLogRewriteLogLevel 两个配置选项的手册,它们为您提供了丰富的附加信息,有助于了解重写期间实际发生的情况。

【讨论】:

  • 这个不行,当我输入 /?c=FF0000 时它可以显示颜色,但我输入 /FF0000 它显示 404 页。
  • 那么,您在问题中引用的脚本是如何命名的?我以为它被称为 index.php...
  • 我添加了使用日志工具的提示。这可以帮助您找出内部实际调用的内容。
  • 不客气。现在您只需勾选投票箭头下方的复选标记即可接受答案。
  • 你好,还有一个问题。我想制作一个手动输入十六进制代码的输入框我试过if(isset($_GET['c'])){ $hex = $_GET['c']; } if(!isset($GET['c'])){ $hex = $_POST['search']; }但不起作用。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-05-25
  • 2014-04-08
  • 1970-01-01
  • 2014-06-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多