主頁 > 論壇 > 设计与开发 >

OE中“插入链接”时遇到的问题

You need to be logged in to get access to the forums. You can do so here

作者 訊息

橡 树

橡 树

2007年 九月 12日(星期三) 4:24:14 am

eZ Publish: 3.9.2运行环境如下: ----OS: Linux ----Apache: 2.0.54 ----PHP: 4.4.7 ----MySQL: 5.0.24 我想通过OE插入链接,当在“插入链接”对话框的“类型”下拉列表中选择ezobject:或eznode:时,在其右侧出现“浏览”按钮,单击“浏览”按钮,弹出对话框,内容如下: ------------------------------------------------------------------------------------------------------------------------------------------------------------------ Not Found The requested URL /insertlink was not found on this server. Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request. ------------------------------------------------------------------------------------------------------------------------------------------------------------------ 我用“was not found on this server”字符串在源程序中搜索,发现只有这两个文件中包含此字符串:/home/mydomain/ez/index_image_mysql.php /home/mydomain/ez/index_image_pgsql.php /home/mydomain/ez/index_image_mysql.php中相关代码如下: ------------------------------------------------------------------------------------------------------------------------------------------------------------------ <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> <HTML><HEAD> <TITLE>404 Not Found</TITLE> </HEAD><BODY> <H1>Not Found</H1> The requested URL <?=htmlspecialchars( $filename )?>was not found on this server.<P> </BODY></HTML> ------------------------------------------------------------------------------------------------------------------------------------------------------------------ 为了验证我的判断,我把上段程序中错误信息提示一行改为: ------------------------------------------------------------------------------------------------------------------------------------------------------------------ The requested URL <?=htmlspecialchars( $filename )?><?=htmlspecialchars( $filename )?>was not found on this server.<P> ------------------------------------------------------------------------------------------------------------------------------------------------------------------ 然后清除所有缓存,当我再次插入链接时,弹出的对话框显示的错误信息仍为: The requested URL /insertlink was not found on this server. 而不是预想的: The requested URL /insertlink /insertlink was not found on this server. 我的想法对吗? 谢谢! p.s. 这个功能在我的另外一个eZ Publish 3.9.2中正常,可以通过OE正常插入链接。 OS: Windows XP-SP2 Apache: 2.2.4 PHP: 4.4.7 MySQL: 5.0.45

陈 明星

2007年 九月 13日(星期四) 3:28:26 am

Hi 橡橡(好肉麻happy) 建议你用Debug查看错误提示信息,记着“快速设置”里的Siteaccess是admin的 设置后,清除cache 然后按你的步骤走,插入链接的时候注意下面的debug信息

橡 树

橡 树

2007年 九月 13日(星期四) 9:34:29 am

Hi,星星 肉麻的感觉还不错 happy 按照你的建议测试如下: 1.在“快速设置”中勾选“Debug Output”,在siteaccess下拉列表中选择“ezwebin_site_admin”,然后清除所有缓存。 2.编辑某一页面,出现如下eZ Debug信息: --------------------------------------------------------------------------------------------------------------------------------------------------------------- Warning: ezi18n Sep 13 2007 00:08:54 No translation for file(translation.ts) in context(design/standard/ezdhtml): 'You're running Internet Explorer on Windows Vista. The Online Editor is currently not compatible with this configuration. Please disable the editor or use Firefox/Mozilla browser.' with comment() --------------------------------------------------------------------------------------------------------------------------------------------------------------- 3.这个警告信息有两个错误:a)我用的是Windows XP而不是Vista;b)我的是Firefox而不是IE。 我找到了判断浏览器类别的地方: --------------------------------------------------------------------------------------------------------------------------------------------------------------- ./extension/ezdhtml/ezxmltext/handlers/input/ezdhtmlxmlinput.php 121: function browserSupportsDHTMLType() { $supportsDHTMLType = false; $userAgent = eZSys::serverVariable( 'HTTP_USER_AGENT' ); if ( eregi('MSIE[ \/]([0-9\.]+)', $userAgent, $browserInfo ) ) { $version = $browserInfo[1]; if ( strpos( $userAgent, 'Windows NT 6.' ) !== false ) { $supportsDHTMLType = 'Vista'; } elseif ( $version >= 5.0 ) { $supportsDHTMLType = "IE"; } } elseif ( preg_match ("/opera/i", $userAgent ) ) $supportsDHTMLType = false; elseif ( preg_match ("/gecko/i", $userAgent ) ) $supportsDHTMLType = "Gecko"; if ( preg_match ("/konqueror/i", $userAgent ) ) $supportsDHTMLType = false; return $supportsDHTMLType; } --------------------------------------------------------------------------------------------------------------------------------------------------------------- 是不是这个地方有些问题呢? 4.在打开“插入链接”对话框后,在对话框底部出现了一些eZ Debug信息,都是正常的;当选择ezobject:,“浏览”要插入的对象时,出现了第一个帖子中所说的错误,但是这时对话框里的eZ Debug信息消失了,正在编辑的页面的eZ Debug信息没有变化。 不知道该怎么办了,再慢慢想办法,说不定那天问题就解决了。 谢谢!