<img/>标记中的src属性如何使用漂亮的URL与index.php进行交互

时间:2014-06-03 16:05:25

标签: php html pretty-urls

在使用MVC模式的典型php应用程序中,每个请求都会被引导到index.php,这意味着当我输入

http://localhost/controller1/action1

它会向php脚本发出第一个请求,那么,如果生成的html页面会怎样 http://localhost/controller1/action1

还包含

<img src="http://localhost/controller2/action2" >

,这个img标签会自动向index.php发出另一个请求,并将src值替换为从

生成的结果

controller2/action2?

我已检查过脚本发出的请求,但确实有两个请求,但src的值没有改变并保持为

<img src="http://localhost/controller2/action2" >

我的问题是: 1. src propery中的第二个请求是否会对index.php发出另一个请求? 2.如果发出请求,为什么src的值没有改变为来自controller2 / action2的结果?

2 个答案:

答案 0 :(得分:1)

是的,src属性中的第二个请求将向index.php发出请求。

但是,它不会替换实际的源字符串,它会将图像的源设置为php脚本的输出。

答案 1 :(得分:0)

  

这个img标签会自动向index.php发出另一个请求吗

这将导致浏览器向给定的URL发出请求。服务器可能会将其解析为index.php文件。

  

并将src值替换为

生成的结果

它永远不会替换src属性的值。 index.php程序可能会返回图像数据,它可能会返回重定向,甚至可能会返回HTML文档或其他不是图像的内容(这对于上下文来说是不合理的。)。

  

src propery中的第二个请求是否会向index.php提出另一个请求?

使用相同URL的第二个资源可能会也可能不会触发新请求,具体取决于HTTP标头和浏览器配置中的缓存规则。

  

为什么src的值没有改变为从controller2 / action2

回显的结果

HTML文档不会被浏览器(或服务器)重写,因为它们引用了资源。