最近有人问我prohosting的乱码问题和广告,我找了相关的帖,希望对大家有帮助
国外空间乱码解决办法!
vb论坛除乱码
加入这一语句
header("content-Type: text/html; charset=gb2312");
VB目录下的GLOBAL.PHP第140行上下
// figure out the chosen style settings
这句话上面就可以了
VB/ADMIN的GLOBAL.PHP第100行上下
require("./sessions.php");
这一句的下面加入就好了
在instll.php的最前面也加入
<? header("content-Type: text/html; charset=gb2312");?>
cdb论坛去乱码
在header.php的第一行加<?header("content-Type: text/html; charset=gb2312");?>就OK啦,然后在加入管理中心——》CDB选象——》允许用户自定义
GB/BIG5 内码:选择关闭,就OK啦
1.若是html文件(.htm .html):
在<head></head>中加上<meta http-equiv="Content-Type" content="text/html;
charset=gb2312">
2.若是PHP/cgi文件(.php .php3 .php4):
在每个PHP文件第一行加上<?header("content-Type: text/html; charset=gb2312"); ?>
3.若是asp文件(.asp .jsp):
下面言归正传,说说asp源文件在国外服务器上中文问题的解决办法:
1.首先,把您的asp源文件放在 IIS 里进行全面测试,调用每一项功能,确认它完全能够使用,并正确显示中文,并打开 *.mdb
数据库文件查看中文显示是否正常。全部通过后,做好备份文件,即可执行第二步。
2.如果,您根本不懂 asp 的话,最简单的方法是:
打开 所有 *.asp 文件,并在第一行插入 <%@ codepage="936" %>,
例外情况:
①,如果第一行是以 <%@ LANGUAGE="VBSCRIPT" %> 开头,
则把第一行改为:<%@ codepage="936" LANGUAGE="VBSCRIPT" %>
②,如果第一行是以 <html> 或 <SCRIPT LANGUAGE="javascript">开头,则不加入。
3.第二步完成后,再用 IIS 对每一项功能进行测试,如显示 \0\conn.asp line 1, 即为错误信息,意思是:
conn.asp 源文件第一行有错,那就把 <%@ codepage="936" %> 删除即可,一些例外错误,请到 http://search.microsoft.com/default.asp
;这里,输入“错误信息”查询即可,全部功能测试可行后,即可上传至国外服务器上,进行测试。
4.方法还是:调用每一项功能,全部能正确使用并能显示中文后,再“下传”*.mdb 文件(非常重要),打开,确认能正确显示中文,大功告成。
另外在外国服务器上用ACESS2000的中文显示方法不用转化数据库ACESS2000,只需在ASP第一行加入<%@
codepage=1256 %>
第2楼
解决ASP在国外服务器上中文显示的几种情况
解决方法(三个方法)
1。
最简单的是将ACCESS数据库转为老版的(比如97),方法简单
使用 Microsoft Access 2000 打开数据库,选择工具菜单>数据库实用工具>转换数据库>到早期 Access
数据库版本。OK!
2.后来订阅了微软的新闻组,在微软的新闻组dotnet.framework.aspplus.general中发现有讨论这
个问题的文章,方法为添加<%@ CODEPAGE = "936" %>到每一页的开头,有点类似于jsp中的
<%@ page contentType="text/html;charset=gb2312"%>
赶紧测试了一下,果然OK!!!
例子如下面所示:
<%@ CODEPAGE = "936" %>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="System.Data.ADO" %>
<%@ Import Namespace="System.Globalization" %>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
3.在翻阅了微软NGWS文档后发现在文档的常见问题部分有提到要添加一个config.web文件到
web目录下,试了一下,中文显示果然OK了。
方法如下:
建立一个文件config.web,内容如下,放在WEB目录下
<configuration>
<globalization
requestencoding="utf-8"
responseencoding="utf-8"
/>
</configuration>
网上有人说将utf-8换成gb2312好像也可以,没有试过,大家可以一试。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
补充:
第一点不支持中文名注册
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
动网论坛在国外空间运行需要修改文件详细说明
《动网论坛在国外空间(西文系统)运行需要修改文件详细说明》
修改后的动网论坛在国内空间也同样可以正常运行,
并且不用做再次修改,也不用修改Access数据库内容。
修改文件:
1.
===conn.asp
把原文的
<%@LANGUAGE="VBscript"%>
修改成
<%@LANGUAGE="VBscript" CODEPAGE="936"%>
----------
2.
===inc/char.asp
把原文最后的
end function
%>
修改成
end function
Rem 国外ASP服务器中文用户名支持
function CodeCookie(str)
Dim i
Dim strRtn
for i=len(str) to 1 step -1
strRtn=strRtn & ascw(mid(str,i,1))
if (i<>1) then strRtn=strRtn & "a"
next
CodeCookie=strRtn
end function
function DecodeCookie(str)
Dim i
Dim strArr,strRtn
strArr=Split(str,"a")
for i=UBound(strArr)-LBound(strArr) to 0 step -1
strRtn=strRtn & chrw(strArr(i))
next
DecodeCookie=strRtn
end function
Rem 完成
%>
----------
3.
===inc/char_login.asp
把原文的
Response.Cookies("aspsky")("username") = username
Response.Cookies("aspsky")("userid") = UserID
Response.Cookies("aspsky")("password") = PassWord
Response.Cookies("aspsky")("userclass") = userclass
Response.Cookies("aspsky")("userhidden") = userhidden
rem 清除图片上传数的限制
修改成
Rem 国外ASP服务器中文用户名支持
Response.Cookies("aspsky")("username") = CodeCookie(username)
' Response.Cookies("aspsky")("username") = username
Rem 完成
Response.Cookies("aspsky")("userid") = UserID
Response.Cookies("aspsky")("password") = PassWord
Response.Cookies("aspsky")("userclass") = userclass
Response.Cookies("aspsky")("userhidden") = userhidden
rem 清除图片上传数的限制
----------
4.
===inc/const.asp
把原文的
membername=checkStr(request.cookies("aspsky")("username"))
memberword=checkStr(request.cookies("aspsky")("password"))
memberclass=checkStr(request.cookies("aspsky")("userclass"))
userhidden=request.cookies("aspsky")("userhidden")
修改成
Rem 国外ASP服务器中文用户名支持
membername=DecodeCookie(checkStr(request.cookies("aspsky")("username")))
' membername=checkStr(request.cookies("aspsky")("username"))
Rem 完成
memberword=checkStr(request.cookies("aspsky")("password"))
memberclass=checkStr(request.cookies("aspsky")("userclass"))
userhidden=request.cookies("aspsky")("userhidden")
----------
5.
===logout.asp
把原文的
dim activeuser
修改成
dim activeuser
Rem 国外ASP服务器中文用户名支持
membername=DecodeCookie(request.cookies("aspsky")("username"))
Rem 完成
----------
6.
===reg.asp
把原文的
Response.Cookies("aspsky")("username") = username
Response.Cookies("aspsky")("password") = password
Response.Cookies("aspsky")("userclass") = userclass
Response.Cookies("aspsky")("userid") = userid
Response.Cookies("aspsky")("userhidden") = 2
Response.Cookies("aspsky").path=cookiepath
修改成
Rem 国外ASP服务器中文用户名支持
Response.Cookies("aspsky")("username") = CodeCookie(username)
'Response.Cookies("aspsky")("username") = username
Rem 完成
Response.Cookies("aspsky")("password") = password
Response.Cookies("aspsky")("userclass") = userclass
Response.Cookies("aspsky")("userid") = userid
Response.Cookies("aspsky")("userhidden") = 2
Response.Cookies("aspsky").path=cookiepath
----------
如果你修改了之后还是有问题,可能需要重新上传一下。
适合于DVBBS 5.0 Final SP1
FortuneCity 網頁廣告消除法
只要將<body>之前加上
<noscript>
<body>
</noscript>
NBCi ( 前與為 XOOM ) 網頁廣告消除法
只要將網址連結改為
http://members.xoom.com/_XMCM/帳號/網頁檔案
http://members.nbci.com/_XMCM/帳號/網頁檔案
HyperMart 網頁廣告消除法
於網頁最後的</body></html>之後加上
<noscript>
<!--#echo banner=""-->
</noscript>
HyperMart 中使用 CGI 時的廣告消除法
於程式中找到顯示</body></html>的部份,一般最常見是
print "</body></html>\n";
在其後面加上以下語法即可
方法一
print "<noscript>\n";
print "<!--#echo banner=\"\"-->\n";
print "</noscript>\n";
方法二
print "<noscript>\n<!--#echo banner=\"\"-->\n<\/noscript>";
當然,程式中也許不只一個</body></html>而已,所以要找到全部的全改掉才行。
VirtualAve 網頁廣告消除法
方法一 - 於網頁最後的</body></html>之後加上
<noscript>
<!--VirtualAvenueBanner-->
</noscript>
方法二 - 於網頁最後的</body></html>之後加上
<noframes>
<!--VirtualAvenueBanner-->
</noframes>
VirtualAve 中使用 CGI 時的廣告消除法
方法一
於程式中找到顯示</body></html>的部份,一般最常見是:
print "</body></html>\n";
在其後面加上以下語法即可
print "<noscript>\n";
print "<!--VirtualAvenueBanner-->\n";
print "</noscript>\n";
當然,程式中也許不只一個</body></html>而已,所以要找到全部的全改掉才行。
方法二
於程式中找到顯示</body></html>的部份,一般最常見是:
print "</body></html>\n";
在其後面加上以下語法即可
print "<noframes>\n";
print "<!--VirtualAvenueBanner-->\n";
print "</noframes>\n";
方法三
於程式中找到顯示</body></html>的部份,一般最常見是:
print "</body></html>\n";
在其後面加上以下語法即可
print "<noframes>\n<!--VirtualAvenueBanner-->\n<\/noframes>";
當然,程式中也許不只一個</body></html>而已,所以要找到全部的全改掉才行。
DISCUZ论坛对付国外空间乱码最简单的办法
DISCUZ论坛对付国外空间乱码最简单了,在它的配置文件config.php里找到这句:
$headercharset = 1; // 强制设置字符集, 0=否, 1=是. 乱码时使用
将等号后面修改成1就可以了,无须修改其它文件。
其实很简单,但是注意到的人不多:)
|
相关链接: |