session Cannot send session cache limiter 错误提示

 更新时间:2016年11月25日 17:40  点击:1516

开始时经常会碰到如下提示

warning: session_start() [function.session-start]: cannot send session cache limiter - headers already sent (output started at e:php教程www.111cn.netadmin.php:1) in e:phpwww.111cn.netlogolistadminlogo.php on line 2

这是提供session前面己经有输出了,我们只要把session_start()放在最前面,同时最了为避免出错提供可以在前面加@,如@session_start();这样就可以了。

同时也可以在php.ini中修改session.auto_start = 0 为 session.auto_start = 1

就可以了。

 

用iconv函数:

iconv( "utf-8", "gb2312" , "abc阳光123");

据说这样好些,可以忽略转换时的错误!

iconv( "utf-8", "gb2312//ignore" , "abc阳光123");

mb_convert_encoding的用法见官方:
http://cn.php教程.net/manual/zh/function.mb-convert-encoding.php

做一个gbk to utf-8

< ?php
header("content-type: text/html; charset=utf-8");
echo mb_convert_encoding("我的友仔", "utf-8", "gbk");
?>

再来个gb2312 to big5

< ?php
header("content-type: text/html; charset=big5");
echo mb_convert_encoding("你是我的朋友", "big5", "gb2312");
?>


不过要使用上面的函数需要安装但是需要先enable mbstring 扩展库。

php中的另外一个函数iconv也是用来转换字符串编码的,与上函数功能相似。

下面还有一些详细的例子:
iconv — convert string to requested character encoding
(php 4 >= 4.0.5, php 5)
mb_convert_encoding — convert character encoding
(php 4 >= 4.0.6, php 5)

用法:
string mb_convert_encoding ( string str, string to_encoding [, mixed from_encoding] )
需要先enable mbstring 扩展库,在 php.ini里将; extension=php_mbstring.dll 前面的 ; 去掉
mb_convert_encoding 可以指定多种输入编码,它会根据内容自动识别,但是执行效率比iconv差太多;

出现这种问题是变量未定义了,我们只要把加个验证如

$a =isset($_get['aa'])?$_get['aa']:'变量未定义';

这样未定义变量也不会出现undefined variable和 undefined index
提供哦,同时我们还提供在php ini或在php中设置错误不提示的方法


解决方法:
1) error_reporting设置:
找到error_reporting = e_all
修改为error_reporting = e_all & ~e_notice

2) register_globals设置:
找到register_globals = off
修改为register_globals = on

resource curl_init ([ string $url = null ] )

修改配置:
1.修改php教程.ini,将;extension=php_curl.dll前面的分号去掉
2.拷贝libeay32.dll、ssleay32.dll(c:apps教程ervphp5)两个文件到system32目录
3.重启apache(services.msc)即可

<?php
echo "curl - function test <br>" ;
if ($load == 1){
function webcheck ($url) {
        $ch = curl_init ($url) ;
        curl_setopt ($ch, curlopt_returntransfer, 1) ;
        $res = curl_exec ($ch) ;
        curl_close ($ch) ;
        return ($res) ;
}
echo "url = $url <br>" ;

$erg = webcheck("my_page.php/test_1.php") ;
$zahl = strlen ($erg) ;
echo "length = $zahl " ;
?>

如果你在使用过程出现fatal error: call to undefined function curl_init(),试着做如下操作

你看看php的phpinfo()中有没有curl扩展支持!

把php_curl.dll拷到c:windows和c:windowssystem32里面 重启apache
之后再试试看

不是php_curl.dll这个文件
是把php目录中的libeay32.dll,ssleay32.dll拷到c:windowssystem32里面 重启apache
更多详细内容请查看:http://www.111cn.net/phper/31/83bccb7f05107b9ba65c22ce4dae1bf8.htm

网上很多如何进行 301重定向的教程,无论是整站重定向还是单页重定向。下面就以我的www.111cn.net为例,因为很多时候你没有独立的服务器或你的apache不支持.haccess文件等原因,你不得不利用脚本语言来实例301重定向了。

1.1 无www域名转移到www域名
复制代码 代码如下:

rewriteengine on
rewritecond %{http_host} ^111cn.net [nc]
rewriterule ^(.*)$ http://www.111cn.net/$1 [r=301,nc]

1.2 整站301重定向
复制代码 代码如下:

options +followsymlinks
rewriteengine on
rewritecond %{http_host} ^111cn.net [nc]
rewriterule ^(.*)$ http://www.111cn.net/$1 [l,r=301]
rewritecond %{http_host} ^www.111cn.net [nc]
rewriterule ^(.*)$ http://111cn.net/$1 [l,r=301]

另外一种是在根目录下的index.php教程里这样弄
复制代码 代码如下:

header(“http/1.1 301 moved permanently”);
header(“location:http://111cn.net/”);
exit();

2、asp教程主机301重定向
在 index.asp 或 default.asp 的最顶部加入以下几行:
代码如下:
复制代码 代码如下:

<%
response.status=”301 moved permanently”
response.addheader “location”,”www.111cn.net ”
response.end
%>

3、asp.net教程主机301重定向
asp .net:

response.status = “301 moved permanently”;
response.addheader(”location”,"http://www.111cn.net");
}


我封装在一个类里:
复制代码 代码如下:

using system;
using system.collections.generic;
using system.text;
using system.web.ui;
using system.web.ui.htmlcontrols;
namespace classlib
{
public class urlclass
{
private bool flag301 = false;//是否启动 301
private bool isindex = false;//是否 返回主页 或者保留在当前页
/// <summary>
/// 构造函数
/// </summary>
/// <param name="fl">是否启动 301</param>
/// <param name="page">page</param>
/// <param name="strurl">格式www.xxx.com</param>
public urlclass(bool fl, page page, string strurl)
{
flag301 = fl;
url301(page, strurl);
}
/// <summary>
/// 返回主页
/// </summary>
/// <param name="page"></param>
/// <param name="strurl">格式www.xxx.com</param>
public void url301(page page, string strurl)
{
//301重定向
if (page.request.url.dnssafehost != strurl && flag301 == true)
{
page.response.clear();
page.response.statuscode = 301;
page.response.status = "301 movedpermanently";
page.response.addheader("location", "http://" + strurl);
page.response.end();
}
}
}
}

4 php的301重定向
复制代码 代码如下:

header('http/1.1 301 moved permanently');//发出301头部
header('location: http://www.'.$strdomain.$request_uri);//跳转到我的新域名地址

我用301.inc.php文件写了301代码,在其他文件头部都引用上 就可以了
复制代码 代码如下:

<?php
//-----------------------------------
//301 重定向
$strdomain="chinawecan.com";
$the_host = $_server['http_host']; //取得进入所输入的域名
$request_uri = isset($_server['request_uri']) ? $_server['request_uri'] : '';//判断地址后面部分
if($the_host !== 'www.'.$strdomain) //这是我要以前的域名
{
/*“!==”是不完全等于的意思,也可以用“!=”不等于,这样,就可以将以前的域名,
包括gcxirang.com、www.gcxirang.com以及新域名中我gcidc.net全部重定向到www.gcidc.net*/
header('http/1.1 301 moved permanently');//发出301头部
header('location: http://www.'.$strdomain.$request_uri);//跳转到我的新域名地址
}
//----------------------------------
?>

引用如下:
复制代码 代码如下:

<?php
//-----------------------------------
//301 重定向
include('include/301.inc.php');
?>

5 jsp教程的301重定向
如一页面article.jsp
[code]
<%@ page language="java" contenttype="text/html; charset=utf-8" pageencoding="utf-8"%>
<%
response.setstatus(https教程ervletresponse.sc_moved_permanently);
response.setheader("location","/other.jsp");
return;
%>

[!--infotagslink--]

相关文章

  • Ecshop提示Only variables should be passed by reference in错误

    在安装好ecshop软件之后我们打开首页时提示Only variables should be passed by reference in错误了,碰到这个问题是什么原因呢?下面我们就一起来看看解决办法吧。...2016-11-25
  • 409错误是什么 http 409错误怎么解决

    409错误是什么?http 409错误怎么解决呢?不少站长在遇到这个错误代码之后都一筹莫展,本次一聚教程网为大家带来了详细的说明,快来看看吧。 409错误是什么: HTTP 40...2017-01-22
  • PHP session_start()很慢问题分析与解决办法

    本文章来给各位同学介绍一下关于PHP session_start()很慢问题分析与解决办法,希望碰到此问题的同学可进入参考。 最近在做东西的时候发现一个问题 有一个接口挂...2016-11-25
  • 414错误是什么 414错误怎么解决

    414错误是HTTP协议状态码中的一种,很多都还不知道414错误是什么,以及不知道怎么解决414错误,那么就来看看小编带来的介绍吧。 414错误是什么: HTTP 414错误,(Requ...2017-01-22
  • http 405错误是什么 http 405错误怎么解决

    http 405错误是什么?http 405错误怎么解决?相信很多站长都在找这两个问题的答案,本次小编为大家带来了详细的教程,快来看看吧。 405错误是什么: HTTP 405错误是H...2017-01-22
  • 401错误码代表什么 401错误解决办法

    401是HTTP状态码的一种,属于“请示错误”,表示请求可能出错,已妨碍了服务器对请求的处理。具体的401错误是指:未授权,请求要求进行身份验证。登录后,服务器可能会返回对页面...2017-01-22
  • http 402错误是什么 http 402简介

    http 402错误是什么?402错误较为少见,一般不轻易出现,下面小编就来告诉大家402错误是什么吧。 HTTP 402错误是HTTP状态码的一种,表示“要求付费”; 所求的...2017-01-22
  • 411错误是什么 411错误怎么解决

    411错误是HTTP协议状态码的一种,很多人都还不知道411错误是什么,本次一聚教程网将为大家进行解答,并且告诉大家411错误怎么解决。 411错误是什么: HTTP 411错误,(Lengt...2017-01-22
  • apache网站提示503错误解决办法

    Apache status 503 的原因大致有如下几种情况 : 1、 CPU 负载过高,服务器响应不过来,返回503 2、 系统连接数超限,超过MaxVhostClients的上限,返回503 3、 单IP连接数超限,超过M...2016-01-28
  • 404错误是什么 404错误怎么解决

    403错误是网站访问过程中,常见的错误提示。资源不可用,服务器理解客户的请求,但拒绝处理它。通常由于服务器上文件或目录的权限设置导致,比如IIS或者apache设置了访问权限...2017-01-22
  • php错误提示 open_basedir restriction in effect 解决

    今天在帮助一个朋友配置一台服务器时发现网站配置好了缓存目录读写不成功,在打开错误时发现提示 Warning: file_exists() [function.file-exists]: open_basedir restr...2016-11-25
  • 403错误是什么 403错误怎么解决

    403错误是HTTP状态码的一种,属于“请示错误”,表示服务器拒绝请求。如果在搜索引擎尝试抓取您网站上的有效网页时显示此状态代码,那么,这可能是您的服务器或主机拒绝搜索...2017-01-22
  • 412错误是什么 412错误怎么解决

    412错误是什么?412错误怎么解决?本次一聚教程网将为大家带来详细的介绍,帮助大家全面了解412错误的意思以及解决412错误的方法。 412错误是什么: HTTP 412错误,(Precond...2017-01-22
  • HTTP 408错误是什么 HTTP 408错误解决方法

    相信很多站长都遇到过这样一个问题,访问页面时出现408错误,下面一聚教程网将为大家介绍408错误出现的原因以及408错误的解决办法。 HTTP 408错误出现原因: HTT...2017-01-22
  • 406错误是什么 406错误怎么解决

    HTTP 406错误是HTTP协议状态码的一种,表示无法使用请求的内容特性来响应请求的网页。一般是指客户端浏览器不接受所请求页面的 MIME 类型。 而MIME类型是在把输出...2017-01-22
  • 407错误是什么 407错误怎么解决

    407错误是什么?407错误怎么解决?不少站长都遇到过407错误,下面小编将告诉大家如何处理407错误。 407错误是什么: HTTP 407错误是HTTP协议状态码的一种,表示需要代...2017-01-22
  • 410错误是什么 http 410错误怎么解决

    410错误是HTTP协议状态码的一种,本次一聚教程网将为大家详细介绍HTTP 410错误是什么,以及410错误的解决办法。 410错误是什么: HTTP 410错误是HTTP协议状态码的...2017-01-22
  • HTTP 400错误是什么 HTTP 400错误怎么解决

    每当遇到http错误代码为400,代表客户端发起的请求不符合服务器对请求的某些限制,或者请求本身存在一定的错误,那么HTTP 400错误怎么解决呢?请看下文介绍。 目前400错...2017-01-22
  • PHP Fatal error: Cannot use object of type stdClass as array in错误

    下面一起来看看在php开发中碰到PHP Fatal error: Cannot use object of type stdClass as array in错误问题的解决办法吧。 普通的数组出现如下错误 代码...2016-11-25
  • PHP Curl出现403错误的解决办法

    自己用的小PHP应用,使用curl抓网页下来处理,为了穿墙方便,使用Privoxy作为代理,便于选择哪些网站使用proxy、哪些不用。但今天却遇到了奇怪的问题,访问google baidu这些网站居然都返回403错误,而访问其他的一些网站没事,如果...2014-05-31