【发布时间】:2011-08-20 22:26:04
【问题描述】:
一旦页面被删除,我正在使用 PHP 删除/添加静态页面,我希望能够从 .htaccess 中删除它,但是我已经尝试过,但它会引发错误:
警告:preg_replace() [function.preg-replace]: Unknown modifier '' in ...
代码:
$page_name = $row['page_name']; // Example: help
preg_replace('/RewriteRule ' . preg_quote('^' . $page_name . '/?$ page.php?mode=') . '.*/i', '', $htaccess);
这是一个应该完全删除的示例:
RewriteRule ^help/?$ page.php?mode=help
【问题讨论】:
-
您希望 100% 确保此脚本非常安全。如果您不小心,允许 PHP 根据任何用户输入修改
.htaccess可能会导致 anything 出现在其中请确保它不会被滥用。至少,确保它只是您期望的字符、有限的最大长度等...... -
脚本仅供管理员在制作自定义静态页面时输入,匿名用户不可输入。
-
如果是这种情况,并且您知道 a) 所有管理员都可以信任并且 b) 您的身份验证/验证/授权机制是防弹的,那么我同意这不是风险。如果可能的话,我仍然很想尝试寻找替代方案 - 但这只是 1 个人的意见 :)
-
只有 2 个管理员允许访问管理面板。该脚本只允许为新的静态页面添加一个简单的名称,例如
feedback- 禁止符号等,所以这里的安全性不是这样,这是我需要解决的问题。但是感谢您的评论:-)