日期:2014-05-16  浏览次数:20779 次

同一段HTML代码,在iis下可以运行,ubuntu下apache始终出错!

<OBJECT ID='video1' CLASSID='clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA' WIDTH='800' HEIGHT='600' >
<param name='_ExtentX' value='9313'>
<param name='_ExtentY' value='7620'>
<param name='AUTOSTART' value='1'>
<param name='SHUFFLE' value='0'>
<param name='PREFETCH' value='0'>
<param name='NOLABELS' value='0'>
<param name='SRC' value='瞧瞧.rm'>
<param name='CONTROLS' value='ImageWindow'>
<param name='CONSOLE' value='Clip1'>
<param name='LOOP' value='0'>
<param name='NUMLOOP' value='0'>
<param name='CENTER' value='0'>
<param name='MAINTAINASPECT' value='0'>
<param name='BACKGROUNDCOLOR' value='#000000'>
<embed SRC type='audio/x-pn-realaudio-plugin' CONSOLE='Clip1' CONTROLS='ImageWindow' HEIGHT='480' WIDTH='640' AUTOSTART='true'>
</OBJECT>
<br>
<OBJECT ID='video2' CLASSID='clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA' WIDTH='800' HEIGHT='30' >
<param name='_ExtentX' value='9313'><param name='_ExtentY' value='762'>
<param name='AUTOSTART' value='1'>
<param name='SHUFFLE' value='0'>
<param name='PREFETCH' value='0'>
<param name='NOLABELS' value='0'>
<param name='SRC' value='瞧瞧.rm'>
<param name='CONTROLS' value='ControlPanel'>
<param name='CONSOLE' value='Clip1'>
<param name='LOOP' value='0'>
<param name='NUMLOOP' value='0'>
<param name='CENTER' value='0'>
<param name='MAINTAINASPECT' value='0'>
<param name='BACKGROUNDCOLOR' value='#000000'>
</OBJECT>


就是百度来的一段播放rm文件的代码,在iis下,无论文件名是中文还是英文,都可以播放。

到了apache下,只要文件路径带了汉字,就显示“发生常规错误”。把文件名和路径都改为英文,则可以正常播放。

但如果只能播放英文的话很不方便,有好的解决方法吗?

------解决方案--------------------
可以尝试类似PHP rawurlencode(); 之类的函数,即类似于URL地址编码一样,把中文替换成编码字符。