【发布时间】:2010-11-17 03:22:21
【问题描述】:
我在 Zend 中用于我的链接:
<?php echo baseUrl('/some/path/to/an/action');?>
这在 Firefox 中表现正常。该应用程序是可移植的,无需使用虚拟主机。 例如: 对于这个链接
<a href="<?php echo $this->baseUrl('/admin/users'); ?>">Manage Users</a>
预期的 URL 应该是 http://myhost/webapp_folder/public/controller/action/params 但是这在 IE 中不起作用。我得到http:///webapp_folder/public/controller/action/params。如何为 IE 解决这个问题? (微软什么时候会意识到他们一直关闭最有问题的浏览器????)
FF 中的$_SERVER 数组
[REDIRECT_STATUS] => 200
[HTTP_HOST] => localhost
[HTTP_USER_AGENT] => Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12
[HTTP_ACCEPT] => text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
[HTTP_ACCEPT_LANGUAGE] => en-us,en;q=0.5
[HTTP_ACCEPT_ENCODING] => gzip,deflate
[HTTP_ACCEPT_CHARSET] => ISO-8859-1,utf-8;q=0.7,*;q=0.7
[HTTP_KEEP_ALIVE] => 115
[HTTP_CONNECTION] => keep-alive
[HTTP_REFERER] => http://localhost/industrial/public/admin/groups
[HTTP_COOKIE] => PHPSESSID=kiodpltbra87rkknebg56mcvf3
[HTTP_CACHE_CONTROL] => max-age=0
[PATH] => e:\eclipse\bin\;C:\Program Files (x86)\MiKTeX 2.8\miktex\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\Common Files\Acronis\SnapAPI\;C:\Program Files (x86)\QuickTime\QTSystem\;C:\Program Files (x86)\ATI Technologies\ATI.ACE\Core-Static;C:\Program Files (x86)\GTK2-Runtime\bin;e:\wamp\bin\php\php5.3.0\;C:\Program Files (x86)\Rational\common;
[SystemRoot] => C:\Windows
[COMSPEC] => C:\Windows\system32\cmd.exe
[PATHEXT] => .COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC
[WINDIR] => C:\Windows
[SERVER_SIGNATURE] =>
[SERVER_SOFTWARE] => Apache/2.2.11 (Win32) PHP/5.3.0
[SERVER_NAME] => localhost
[SERVER_ADDR] => 127.0.0.1
[SERVER_PORT] => 80
[REMOTE_ADDR] => 127.0.0.1
[DOCUMENT_ROOT] => E:/wamp/www/
[SERVER_ADMIN] => admin@localhost
[SCRIPT_FILENAME] => E:/wamp/www/industrial/public/index.php
[REMOTE_PORT] => 50447
[REDIRECT_URL] => /industrial/public/admin/users
[GATEWAY_INTERFACE] => CGI/1.1
[SERVER_PROTOCOL] => HTTP/1.1
[REQUEST_METHOD] => GET
[QUERY_STRING] =>
[REQUEST_URI] => /industrial/public/admin/users
[SCRIPT_NAME] => /industrial/public/index.php
[PHP_SELF] => /industrial/public/index.php
[REQUEST_TIME] => 1289966668
IE 中的$_SERVER 数组
[REDIRECT_STATUS] => 200]
[HTTP_ACCEPT] => */*
[HTTP_ACCEPT_LANGUAGE] => en-US
[HTTP_USER_AGENT] => Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; FunWebProducts; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; InfoPath.2)
[HTTP_ACCEPT_ENCODING] => gzip, deflate
[HTTP_HOST] => localhost
[HTTP_CONNECTION] => Keep-Alive
[HTTP_COOKIE] => PHPSESSID=9gdgck6s21umd2afj798aofnd0
[PATH] => e:\eclipse\bin\;C:\Program Files (x86)\MiKTeX 2.8\miktex\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\Common Files\Acronis\SnapAPI\;C:\Program Files (x86)\QuickTime\QTSystem\;C:\Program Files (x86)\ATI Technologies\ATI.ACE\Core-Static;C:\Program Files (x86)\GTK2-Runtime\bin;e:\wamp\bin\php\php5.3.0\;C:\Program Files (x86)\Rational\common;
[SystemRoot] => C:\Windows
[COMSPEC] => C:\Windows\system32\cmd.exe
[PATHEXT] => .COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC
[WINDIR] => C:\Windows
[SERVER_SIGNATURE] =>
[SERVER_SOFTWARE] => Apache/2.2.11 (Win32) PHP/5.3.0
[SERVER_NAME] => localhost
[SERVER_ADDR] => 127.0.0.1
[SERVER_PORT] => 80
[REMOTE_ADDR] => 127.0.0.1
[DOCUMENT_ROOT] => E:/wamp/www/
[SERVER_ADMIN] => admin@localhost
[SCRIPT_FILENAME] => E:/wamp/www/industrial/public/index.php
[REMOTE_PORT] => 50504
[REDIRECT_URL] => /industrial/public/admin/users/
[GATEWAY_INTERFACE] => CGI/1.1
[SERVER_PROTOCOL] => HTTP/1.1
[REQUEST_METHOD] => GET
[QUERY_STRING] =>
[REQUEST_URI] => /industrial/public/admin/users/
[SCRIPT_NAME] => /industrial/public/index.php
[PHP_SELF] => /industrial/public/index.php
[REQUEST_TIME] => 1289966883
奇怪的是所有资源(css、js、图像)都正确加载。是链接格式不正确。
【问题讨论】:
-
呃,我不相信这是可能的。
-
Web 浏览器不参与在 PHP 应用程序中生成 URL 的任何步骤。我不认为正在发生的事情就是你认为正在发生的事情。
-
那我该如何解决呢?我没有想法。 Firefox 运行正常,IE 找不到链接。
-
@user 我认为 MS 已经意识到了这一点。这并不一定意味着他们能够修复它。 ;)
-
出于其他人所陈述的原因,听起来 IE 正在为您提供网站的缓存版本。除非您在服务器端提供用户代理条件内容,否则 PHP 脚本的 HTML 输出不会有任何不同的原因。
标签: php zend-framework