Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
URL重写后PHP页面的性能_Php_.htaccess_Url Rewriting - Fatal编程技术网

URL重写后PHP页面的性能

URL重写后PHP页面的性能,php,.htaccess,url-rewriting,Php,.htaccess,Url Rewriting,我已经为我的页面编写了重写规则 http://localhost/project/new.php?action=loginlike RewriteRule^([a-z]+)/([a-z]+)$1.php?操作=$2 现在我的文件是可以在http://localhost/project/new/login这正是我想要的,但问题是,尽管我正在本地服务器上运行应用程序,但页面加载速度太慢。只要我删除.htaccess文件,它就会快速加载…如果您不修改PHP页面,您应该担心的不是PHP页面的性能,而是服

我已经为我的页面编写了重写规则

http://localhost/project/new.php?action=login
like

RewriteRule^([a-z]+)/([a-z]+)$1.php?操作=$2


现在我的文件是可以在
http://localhost/project/new/login
这正是我想要的,但问题是,尽管我正在本地服务器上运行应用程序,但页面加载速度太慢。只要我删除.htaccess文件,它就会快速加载…

如果您不修改PHP页面,您应该担心的不是PHP页面的性能,而是服务器或重写规则的性能。实现这一点的主要“经典”方法称为前端控制器,在这里,您可以创建一个重定向规则,将其重定向到一个唯一的入口点,然后使用PHP中的Router类相应地分发调用。这更易于维护和扩展


由Martin Fowler(一种使用更多编程语言的设计模式)编写,PHP在这方面是非常新的。中国也在实施它

它不应该那么慢。尝试将您的重写规则添加到httpd.conf,因为它不会为每个请求解析规则。

我简化了规则,有点像
RewriteRule^([a-z]+)/([a-z]+)new.php?action=login
现在性能有所提高,但我认为我必须为我要添加的每个文件添加一个单独的规则……

即使您访问
http://localhost/project/new.php?action=login
你觉得它慢吗?不,如果我访问u…可能是您的本地系统,速度太慢了?好的,您能在上面的问题中启用重写日志并发布匹配的日志吗?您能告诉我这些日志保存在哪里吗???这应该是一个注释而不是答案。