我使用PHP和WordPress。
在localhost上,我可以包含一个没有问题的SVG文件,但是在实时服务器上。我尝试包含一个SVG文件,以便能够用CSS设置它。
我收到了此错误消息
Parse error: syntax error, unexpected T_STRING in
/www/webvol1/34q/h6njx/mysite.com/public_html/wp-content/uploads/2014/02/fish_icon.svg on line 1
我在文件上运行file_exists并返回true,但include不起作用。为什么不?为什么在localhost而不是实时服务器?
答案 0 :(得分:5)
我的托管允许<?并且包括thougt它是一个PHP文件,而不是XML文件。
我必须在XML之前运行echo。
<?php echo '<?xml version="1.0" encoding="utf8"?>'; ?>
它使WordPress无法读取此图像,它会阻止良好的图像预览。其他聪明的解决方案仍然受到欢迎......
答案 1 :(得分:3)
你可能很久以前对它进行了排序,但我遇到了问题,这与apache的short_open_tag
设置有关。
您可以在.htaccess
中包含以下内容,在每个网站的基础上对其进行修改 # .htaccess
<IfModule mod_php5.c>
php_value short_open_tag 0
</IfModule>
或者您可以通过编辑php.ini文件并查找短开标签设置并将其设置为关闭来修复所有网站。
# php.ini
short_open_tag: Off
答案 2 :(得分:0)
它对我有用-只需从您的SVG文件中完全删除xml标头标记,因为浏览器不需要。诸如基于Web的SVGOMG工具之类的SVG优化工具会自动为您完成此操作。