and*_*rew 0 php apache .htaccess mod-rewrite redirect
我希望访问http://www.domain.com/user/xyz.php的网站访问者重定向到https://www.domain.com/user/xyz.php.
即.如果他们在/ user /他们在安全的位置.所以必须重定向到https
我的问题不是具体如何实现这一点,但哪种方法更好?
我的直觉是说我应该用a .htaccess Rewrite rule
但我也考虑过这样的事情:
<?php
if (!$_SERVER['HTTPS'] && strstr('user', $_SERVER['REQUEST_URI'])){
header('location:https://'.$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF']);
}
Run Code Online (Sandbox Code Playgroud)
我想听听有关效率和安全性以及其他考虑因素的意见.
htaccess可能更有效,特别是在内存使用方面.服务器不需要加载PHP,PHP不需要解析和执行脚本.不过,Apache也需要在htaccess中读取和应用配置,但这不会消耗与PHP相同的内存.
至于PHP,执行速度也取决于PHP的加载方式,例如,是否使用了APC缓存.
所以,虽然总的来说我认为htaccess应该更有效率,如果你真的想确定你的配置,我会做一个基准测试.
但总的来说:不要太担心它.选择最好的东西.与具有实际功能的实际脚本执行相比,这不应该是瓶颈.