服务器中禁用了URL文件访问

时间:2011-09-25 15:59:31

标签: php wordpress

在服务器中禁用了URL文件访问 - 这是我通过短网址获得的错误。我不是PHP编码器,所以如果你能发布我应该使用的代码我会很感激! 如何重写路径?

在功能中:

//////////////////////////////////////// Custom templates: page templates
add_filter('single_template', create_function('$t', 'foreach( (array) get_the_category() as $cat ) { if ( file_exists(TEMPLATEPATH . "/single-{$cat->term_id}.php") ) return TEMPLATEPATH . "/single-{$cat->term_id}.php"; } return $t;' ));

电话:

<?php $turl = getTinyUrl(get_permalink($post->ID));
echo 'Short URL <a href="'.$turl.'">'.$turl.'</a>' ?>

2 个答案:

答案 0 :(得分:1)

如果PHP启用了cURL,您可以添加此功能:

function getTinyUrl2($url) {
  $ch = curl_init();

  curl_setopt($ch, CURLOPT_HEADER, 0);
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); //Set curl to return the data instead of printing it to the browser.
  curl_setopt($ch, CURLOPT_URL, "http://tinyurl.com/api-create.php?url=".$url);

  $data = curl_exec($ch);
  curl_close($ch);

  return $data;
}

然后更改您的代码以使用新功能:

$turl = getTinyUrl2(get_permalink($post->ID));
echo 'Tiny Url for this post: <a href="'.$turl.'">'.$turl.'</a>'

希望有所帮助

答案 1 :(得分:-1)

Tinyurl.com不允许您通过php的file_get_contents函数获取文件。 使用curl代替使用tinyurl api。

<?php
   $url = "http://example.com";
   $ch = curl_init("http://tinyurl.com/api-create.php?url=".$url);
   curl_setopt($ch, CURLOPT_RETURNTRANSFERT, true);
   $tinyurl = curl_exec($ch);
   curl_close($ch);
?>