我用的是西部数码虚拟空间主机,HTTP 错误 404.0 - Not Found 您要找的资源已被删除,已更名或暂时求各位大神

件商品,共计
最新信息  西部数码双线主机怎么样?西部数码资讯中心曾经在6月7日对西部数码双线主机进行了监测…10.25[] 10.16[] 10.13[] 10.10[] 10.07[] 图文信息最新信息信息排行
网站建设09.3009.2809.1909.1809.1409.1607.2307.1907.1404.04IDC资讯09.2909.1211.2511.0710.2210.1810.0408.2608.2108.20网站运营10.0510.0409.2409.1511.2109.1308.2808.0508.0408.03网络知识10.0309.2709.2209.1607.0512.1812.1307.1506.1706.15操作系统10.1005.2605.2505.2405.2205.2005.1905.1705.1305.08行业资讯09.2512.1712.1410.1306.2506.1006.0504.0801.1101.09软件技巧01.0212.2512.2210.1307.0804.1604.1303.3103.2512.22服务器技术10.2510.1610.1310.1010.0710.0209.2611.0911.0809.09 |  |  | 热门信息排行推荐信息西部数码云主机怎么样?西部数码资讯中心…06.2906.1606.1205.2605.2505.1705.1304.2704.24专题没有专题 标签 (1) (1) (1) (1) (1) (1) (1) (1) (1) (1) 互动最新留言最新评论没有资料没有资料最新投票您对西部数码的印象如何?西部数码没有听说过。(0%)西部数码服务不好。(25%)西部数码服务好。(0%)西部数码的空间稳定。(25%)西部数码的空间不稳定。(0%)我会选择西部数码的产品。(0%)我不会选择西部数码的产品。(0%)西部数码比万网性价比高。(50%)西部数码不如万网性价比高。(0%)友情链接&&&&&&正文
linux主机404页面设置
首先新建一个记事本并更改名字为:.htaccess(有小数点),然后在记事本里面粘贴下面代码并保存
01.ErrorDocument 404 /404.html
其次上传到网站根目录并把记事本后缀的.txt删除,如下图所示:
再建立一个自己喜欢的404.html文件,如果不会创建404.html文件的朋友可以到文章结尾下载即可。创建完毕后同样上传到网站根目录如上图所示。需要注意的是记事本内的404.html必须和上传错误页面名字相同,如下图
当然这样的404错误页面是没有图片的,如果是想在错误页面添加图片,需要先把你喜欢的404错误图片上传到网站根目录下,再用Notepad++软件对404.html文件进行编辑,按照下图修改图片名字和网站根目录的相同即可。
win主机404页面设置
首先登陆主机后台找到主机管理面板找到一个(错误页面定义)如下图:
在(错误页面定义)选项里面选择(设置自定义错误),系统会自动给你在网站根目录下生成一个包含很多错误页面的HttpErrors目录,将制作好的404页面(可在文章结尾下载)上传替换HttpErrors目录里的404页面即可。
如果需要添加错误页面图片的话同样使用Notepad++软件对404.html文件进行编辑,找到一个例如:background:url(img/portal.png)的位置,再把这个位置的文件名和图片所做位置改成你上传的图片即可。
本文地址:http://seo-chinaz.cn/273.html 特别声明:本文仅用于学习交流,转载作者&&整理发布,欢迎分享本文,转载请保留出处!
上一篇: &&&&&& 下一篇:
o o o o o o o o
SEO优化指南 第一节:第二节:第三节:第四节:第五节:第六节:第七节:第八节:
山东seo优化招聘信息
山东网站优化案例
山东网站建设案例
seo优化常用工具 <a href="127.html" title="外贸SEO教程:搞好外贸网站优化,征服老外很容易!"
推荐SEOer阅读
欢迎您关注我们关于shared pool的深入探讨(五)-数据库专栏,SQL Server-虚拟主机资讯|虚拟主机动态
产品服务快速通道
----------------
==域名注册==
英文域名注册
中文域名注册
==网站推广==
==虚拟主机==
----------------
双线路虚拟主机
基本型虚拟主机
商用型虚拟主机
论坛型虚拟主机
功能型虚拟主机
Vip合租虚拟主机
虚拟主机性能对比
虚拟主机免费试用
机房速度测试
----------------
==租用托管==
服务器租用
----------------
==企业邮局==
购买企业邮局
----------------
==付款方式==
----------------
==联系我们==
您当前位置:->-> ->
关于shared pool的深入探讨(五)-数据库专栏,SQL Server
作者:网友供稿
  西部数码-全国虚拟主机10强!20余项管理功能,全国领先!第6代双线路虚拟主机,南北访问畅通无阻!可在线rar解压,自动数据恢复设置虚拟目录等.免费赠送访问统计,企业邮局.Cn域名注册10元/年,480元起,免费试用7天,满意再付款!P4主机租用799元/月.月付免压金!
文章页数:&
关于shared pool的深入探讨(五)原文链接:http://www.eygle.com/internal/shared_pool-5.htmoracle使用两种数据结构来进行shared pool的并发控制:lock 和 pin.lock比pin具有更高的级别.lock在handle上获得,在pin一个对象之前,必须首先获得该handle的锁定.锁定主要有三种模式: null,share,exclusive.在读取访问对象时,通常需要获取null(空)模式以及share(共享)模式的锁定.在修改对象时,需要获得exclusive(排他)锁定.在锁定了library cache对象以后,一个进程在访问之前必须pin该对象.同样pin有三种模式,null,shared和exclusive.只读模式时获得共享pin,修改模式获得排他pin.通常我们访问、执行过程、package时获得的都是共享pin,如果排他pin被持有,那么数据库此时就要产生等待.在很多statspack的report中,我们可能看到以下等待事件:top 5 wait events~~~~~~~~~~~~~~~~~&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& wait&&&& % totalevent&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& waits& time (cs)&& wt time-------------------------------------------- ------------ ------------ -------library cache lock&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 75,884&&& 1,409,500&& 48.44latch free&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 34,297,906&&& 1,205,636&& 41.43library cache pin&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 563&&&&& 142,491&&& 4.90db file scattered read&&&&&&&&&&&&&&&&&&&&&&&&&&& 146,283&&&&&& 75,871&&& 2.61enqueue&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 2,211&&&&&& 13,003&&&& .45&&&&&&&&& -------------------------------------------------------------这里的library cache lock和library cache pin都是我们关心的.接下来我们就研究一下这几个等待事件.&&&&&&&&& (一).library cache pin等待事件oracle文档上这样介绍这个等待事件:"library cache pin" 是用来管理library cache的并发访问的,pin一个object会引起相应的heap被载入内存中(如果此前没有被加载),pins可以在三个模式下获得:null,share,exclusive,可以认为pin是一种特定形式的锁.当library cache pin等待事件出现时,通常说明该pin被其他用户已非兼容模式持有."library cache pin"的等待时间为3秒钟,其中有1秒钟用于pmon后台进程,即在取得pin之前最多等待3秒钟,否则就超时.&&&&&&& "library cache pin"的参数如下,有用的主要是p1和p2:&&&&&&&&&&&&&&& p1 - kgl handle address.&&&&&&&&&&&&&&& p2 - pin address&&&&&&&&&&&&&&& p3 - encoded mode & namespace&&& "library cache pin"通常是发生在编译或重新编译pl/sql,view,types等object时.编译通常都是显性的,如安装应用程序,升级,安装补丁程序等,另外,"alter","grant","revoke"等操作也会使object变得无效, 可以通过object的"last_ddl"观察这些变化.当object变得无效时,oracle 会在第一次访问此object时试图去重新编译它,如果此时其他session已经把此object pin到library cache中,就会出现问题,特别时当有大量的活动session并且存在较复杂的dependence时.在某种情况下,重新编译object可能会花几个小时时间,从而阻塞其它试图去访问此object的进程.下面让我们通过一个例子来模拟及解释这个等待:1.创建测试用存储过程[oracle@jumper udump]$ sqlplus "/ as sysdba"sql*plus: release 9.2.0.3.0 - production on mon sep 6 14:16:57 2004copyright (c) , oracle corporation.& all rights reserved.connected to an idle instance.sql& startuporacle instance started.total system global area&&
bytesfixed size&&&&&&&&&&&&&&&&&& 451176 bytesvariable size&&&&&&&&&&&&&
bytesdatabase buffers&&&&&&&&&&
bytesredo buffers&&&&&&&&&&&&&&&& 667648 bytesdatabase mounted.database opened.sql& create or replace procedure pining& 2& is& 3& begin& 4&&&&&&&&&& 5&& 6& /procedure created.sql& sql& create or replace procedure calling& 2& is& 3& begin& 4&&&&&&&&&& 5&&&&&&&&& dbms_lock.sleep(3000);& 6&& 7& /procedure created.sql& 2.模拟首先执行calling过程,在calling过程中调用pining过程此时pining过程上获得共享pin,如果此时尝试对pining进行授权或重新编译,将产生library cache pin等待直到calling执行完毕.session 1:[oracle@jumper oracle]$ sqlplus "/ as sysdba"sql*plus: release 9.2.0.3.0 - production on mon sep 6 16:13:43 2004copyright (c) , oracle corporation.& all rights reserved.connected to:oracle9i enterprise edition release 9.2.0.3.0 - productionwith the partitioning, olap and oracle data mining optionsjserver release 9.2.0.3.0 - productionsql& exec calling此时calling开始执行session 2:[oracle@jumper udump]$ sqlplus "/ as sysdba"sql*plus: release 9.2.0.3.0 - production on mon sep 6 16:14:16 2004copyright (c) , oracle corporation.& all rights reserved.connected to:oracle9i enterprise edition release 9.2.0.3.0 - productionwith the partitioning, olap and oracle data mining optionsjserver release 9.2.0.3.0 - productionsql& grant execut此时session 2挂起ok,我们开始我们的研究:从v$session_wait入手,我们可以得到哪些session正在经历library cache pin的等待sql& select sid,seq#,event,p1,p1raw,p2,p2raw,p3,p3raw,state& 2& from v$session_wait where event like library%;&sid&&&&&& seq# event&&&&&&&&&&&&&&&&&&&&&& p1 p1raw&&&&&&&&&&& p2 p2raw&&&&&&&&&&& p3& wait_time seconds_in_wait state---- ---------- ------------------- ---------- -------- ---------- -------- ---------- ---------- --------------- -------------------&& 8&&&&&&& 268 library cache pin&&
52da4d0&&&&&&& 301&&&&&&&&& 0&&&&&&&&&&&&&& 2 waiting等待3秒就超时,seq#会发生变化sql& &sid&&&&&& seq# event&&&&&&&&&&&&&&&&&&&&&& p1 p1raw&&&&&&&&&&& p2 p2raw&&&&&&&&&&& p3& wait_time seconds_in_wait state---- ---------- ------------------- ---------- -------- ---------- -------- ---------- ---------- --------------- -------------------&& 8&&&&&&& 269 library cache pin&&
52da4d0&&&&&&& 301&&&&&&&&& 0&&&&&&&&&&&&&& 2 waitingsql& &sid&&&&&& seq# event&&&&&&&&&&&&&&&&&&&&&& p1 p1raw&&&&&&&&&&& p2 p2raw&&&&&&&&&&& p3& wait_time seconds_in_wait state---- ---------- ------------------- ---------- -------- ---------- -------- ---------- ---------- --------------- -------------------&& 8&&&&&&& 270 library cache pin&&
52da4d0&&&&&&& 301&&&&&&&&& 0&&&&&&&&&&&&&& 0 waiting在这个输出中,p1 列是library cache handle address,pn字段是10进制表示,pnraw字段是16进制表示我们看到,library cache pin等待的对象的handle地址为:52d6730c通过这个地址,我们查询x$kglob视图就可以得到对象的具体信息:note: x$kglob--[k]ernel [g]eneric [l]ibrary cache manager [ob]ject col kglnaown for a10col kglnaobj for a20select addr,kglhdadr,kglhdpar,kglnaown,kglnaobj,kglnahsh,kglhdobjfrom x$kglobwhere kglhdadr =52d6730c/addr&&&& kglhdadr kglhdpar kglnaown&& kglnaobj&&&&&&&&&&&&&& kglnahsh kglhdobj-------- -------- -------- ---------- -------------------- ---------- --------404f9ff0 52d0c sys&&&&&&& pining&&&&&&&&&&&&&&
52d65ba4这里kglnahsh代表该对象的hash value 由此我们知道,在pining对象上正经历library cache pin的等待.然后我们引入另外一个内部视图x$kglpn:note:x$kglpn--[k]ernel [g]eneric [l]ibrary cache manager object [p]i[n]s select a.sid,a.username,a.program,b.addr,b.kglpnadr,b.kglpnuse,b.kglpnses,b.kglpnhdl,b.kglpnlck, b.kglpnmod, b.kglpnreq from v$session a,x$kglpn b where a.saddr=b.kglpnuse and b.kglpnhdl = 52d6730c and b.kglpnmod&&0/& sid username&&& program&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& addr&&&& kglpnadr kglpnuse kglpnses kglpnhdl kglpnlck&& kglpnmod&& kglpnreq----- ----------- ---------------------------------------- -------- -------- -------- -------- -------- -------- ---------- ----------&& 13 sys&&&&&&&& sqlplus@jumper.hurray.com.cn (tns v1-v3) 404fa034 52b2a518 51e3c 52dc8&&&&&&&&& 2&&&&&&&&& 0&通过联合v$session,可以获得当前持有该handle的用户信息.对于我们的测试sid=13的用户正持有该handle那么这个用户正在等什么呢?sql& select * from v$session_wait where sid=13;&&&&&& sid&&&&&& seq# event&&&&&&&&&&&&&& p1text&&&&&&&&&&& p1 p1raw&&& p2text&&&&&&&&& p2 p2raw&&& p3text&&&&&&&&& p3 p3raw&&&& wait_time seconds_in_wait state---------- ---------- ------------------- --------- ---------- -------- ------- ---------- -------- ------- ---------- -------- ---------- --------------- -------&&&&&&& 13&&&&&&&& 25 pl/sql lock timer&& duration&&&&& 1d4c0&&&&&&&&&&&&&&&&& 0 00&&&&&&&&&&&&&&&&&&&&&&& 0 00&&&&&&&&&&&&&&& 0&&&&&&&&&&& 1200 waitingok,这个用户正在等待一次pl/sql lock timer计时.得到了sid,我们就可以通过v$session.sql_hash_value,v$session.sql_address等字段关联v$sqltext,v$sqlarea等视图获得当前session正在执行的操作.sql& select sql_text from v$sqlarea where v$sqlarea.hash_value=;sql_text--------------------------------------------------------------------------------这里我们得到这个用户正在执行calling这个存储过程,接下来的工作就应该去检查calling在作什么了.我们这个calling作的工作是dbms_lock.sleep(3000)也就是pl/sql lock timer正在等待的原因至此就找到了library cache pin的原因.简化一下以上查询:1.获得library cache pin等待的对象select addr, kglhdadr, kglhdpar, kglnaown, kglnaobj, kglnahsh, kglhdobj& from x$kglob&where kglhdadr in (select p1raw&&&&&&&&&&&&&&&&&&&&& from v$session_wait&&&&&&&&&&&&&&&&&&&& where event like library%)/addr&&&& kglhdadr kglhdpar kglnaown&& kglnaobj&&&&&&&&&&&&&& kglnahsh kglhdobj-------- -------- -------- ---------- -------------------- ---------- --------404f0c 52d6730c sys&&&&&&& pining&&&&&&&&&&&&&&
52d65ba42.获得持有等待对象的session信息select a.sid, a.username, a.program, b.addr, b.kglpnadr, b.kglpnuse,&&&&&& b.kglpnses, b.kglpnhdl, b.kglpnlck, b.kglpnmod, b.kglpnreq& from v$session a, x$kglpn b&where a.saddr = b.kglpnuse&& and b.kglpnmod && 0&& and b.kglpnhdl in (select p1raw&&&&&&&&&&&&&&&&&&&&&&& from v$session_wait&&&&&&&&&&&&&&&&&&&&&& where event like library%)/sql& &&&&&& sid username&& program&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& addr&&&& kglpnadr kglpnuse kglpnses kglpnhdl kglpnlck&& kglpnmod&& kglpnreq---------- ---------- ------------------------------------------------ -------- -------- -------- -------- -------- -------- ---------- ----------&&&&&&& 13 sys&&&&&&& sqlplus@jumper.hurray.com.cn (tns v1-v3)&&&&&&&& 404f6ca4 52b2a518 51e3c 52dc8&&&&&&&&& 2&&&&&&&&& 03.获得持有对象用户执行的代码select sql_text& from v$sqlarea&where (v$sqlarea.address, v$sqlarea.hash_value) in (&&&&&&&&& select sql_address, sql_hash_value&&&&&&&&&&& from v$session&&&&&&&&&& where sid in (&&&&&&&&&&&&&&&&&&& select sid&&&&&&&&&&&&&&&&&&&&& from v$session a, x$kglpn b&&&&&&&&&&&&&&&&&&&& where a.saddr = b.kglpnuse&&&&&&&&&&&&&&&&&&&&&& and b.kglpnmod && 0&&&&&&&&&&&&&&&&&&&&&& and b.kglpnhdl in (select p1raw&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& from v$session_wait&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& where event like library%)))/sql_text--------------------------------------------------------------------------------在grant之前和之后我们可以转储一下shared pool的内容观察比较一下:sql& alter session set events immediate trace name library_cache level 32;session altered.在grant之前:从前面的查询获得pining的handle是52d6730c:******************************************************bucket 67790:& library object handle: handle=52d6730c& name=sys.pining & hash=891b08ce timestamp=09-06-:51& namespace=tabl/prcd/type flags=kghp/tim/sml/[]& kkkk-dddd-llll=11 lock=n pin=s latch#=1--在object上存在共享pin--在handle上存在null模式锁定,此模式允许其他用户继续以null/shared模式锁定该对象& lwt=0x52ddd67324] ltm=0x52ddd6732c]& pwt=0x52db2a4e8,0x52b2a4e8] ptm=0x52ddd67394]& ref=0x52dd6d67314] lnd=0x52d673a0[0x52dd6afcc]&&& library object: object=52d65ba4&&& type=prcd flags=exs/loc[0005] pflags=nst [01] status=vald load=0&&& data blocks:&&& data#&&&& heap& pointer status pins change&&& alloc(k)& size(k)&&& ----- -------- -------- ------ ---- ------&&&& -------- --------&&&&&&& 0 52d65dac 52d65c90 i/p/a&&&& 0 none&&&&&& 0.30&&&& 0.55&&&&&&& 4 52d65c40 52d67c08 i/p/a&&&& 1 none&&&&&& 0.44&&&& 0.48在发出grant命令后:******************************************************bucket 67790:& library object handle: handle=52d6730c& name=sys.pining & hash=891b08ce timestamp=09-06-:51& namespace=tabl/prcd/type flags=kghp/tim/sml/[]& kkkk-dddd-llll=11 lock=x pin=s latch#=1--由于calling执行未完成,在object上仍让保持共享pin--由于grant会导致重新编译该对象,所以在handle上的排他锁已经被持有--进一步的需要获得object上的exclusive pin,由于shared pin被calling持有,所以library cache pin等待出现.& lwt=0x52ddd67324] ltm=0x52ddd6732c]& pwt=0x52db2a4e8,0x52b2a4e8] ptm=0x52ddd67394]& ref=0x52dd6d67314] lnd=0x52d673a0[0x52dd6afcc]&&& library object: object=52d65ba4&&& type=prcd flags=exs/loc[0005] pflags=nst [01] status=vald load=0&&& data blocks:&&& data#&&&& heap& pointer status pins change&&& alloc(k)& size(k)&&& ----- -------- -------- ------ ---- ------&&&& -------- --------&&&&&&& 0 52d65dac 52d65c90 i/p/a&&&& 0 none&&&&&& 0.30&&&& 0.55&&&&&&& 4 52d65c40 52d67c08 i/p/a&&&& 1 none&&&&&& 0.44&&&& 0.48实际上recompile过程包含以下步骤,我们看一下lock和pin是如何交替发挥作用的:1.存储过程的library cache object以排他模式被锁定,这个锁定是在handle上获得的exclusive锁定可以防止其他用户执行同样的操作,同时防止其他用户创建新的引用此过程的对象.2.以shared模式pin该对象,以执行安全和错误检查.3.共享pin被释放,重新以排他模式pin该对象,执行重编译.4.使所有依赖该过程的对象失效5.释放exclusive lock和exclusive pin(二).library cache lock等待事件如果此时我们再发出一条grant或compile的命令,那么library cache lock等待事件将会出现:session 3:[oracle@jumper oracle]$ sqlplus "/ as sysdba"sql*plus: release 9.2.0.3.0 - production on tue sep 7 17:05:25 2004copyright (c) , oracle corporation.& all rights reserved.connected to:oracle9i enterprise edition release 9.2.0.3.0 - productionwith the partitioning, olap and oracle data mining optionsjserver release 9.2.0.3.0 - productionsql& alter proc此进程挂起,我们查询v$session_wait视图可以获得以下信息:sql& select * from v$session_&sid seq# event&&&&&&&&&&&&&& p1text&&&&&&&&&&&&&&&&& p1 p1raw&&& p2text&&&&&&&&&&&&&& p2 p2raw&&& p3text&&&&&&&&&&&&& p3 p3raw&&&& wait_time seconds state& ---- ---- ------------------- --------------- ---------- -------- ------------ ---------- -------- ---------------- -------------- ---------- ------& ---& 11& 143 library cache pin&& handle address&
52dd5fe4 pin address&
52b55cb0 100*mode+namespace 301 0000012d&&&&&&&&& 0&&&&&& 6 waiting& 13&& 18 library cache lock& handle address&
52dd5fe4 lock address
52b*mode+namespace 301 0000012d&&&&&&&&& 0&&&&&& 3 waiting&& 8& 415 pl/sql lock timer&& duration&&&&&&& 120000&&&& &&&&&&&&&&&&&&&&&&&&&& 0 00&&&&&&&&&&&&&&&&&&&&&&&&&&& 0 00&&&&&&&&&&&&&&& 0&&&&& 63 waiting....13 rows selected由于handle上的lock已经被session 2以exclusive模式持有,所以session 3产生了等待.我们可以看到,在生产数据库中权限的授予、对象的重新编译都可能会导致library cache pin等待的出现.所以应该尽量避免在高峰期进行以上操作.另外我们测试的案例本身就说明:如果package或过程中存在复杂的、交互的依赖以来关系极易导致library cache pin的出现.所以在应用开发的过程中,我们也应该注意这方面的内容.&
文章整理:西部数码--专业提供、服务
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!
文章页数:&
??????????
??????????
版权申明:本站文章均来自网络,如有侵权,请联系我们,我们收到后立即删除,谢谢!
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有。
版权所有 西部数码(www.west.cn)
CopyRight (c)
west263.com all right reserved.
公司地址:四川省成都市金牛区一环路北一段99号环球广场24楼 邮编:610031
电话总机:028-08 38
售前咨询:总机转201 202 203 204 206 208
售后服务:总机转211 212 213 214
财务咨询:总机转224 223 传真:028- 财务QQ:
售前咨询QQ:2182518
售后服务QQ:全国统一热线:400-028-5800028-
密&#12288;码:
Domain Trader
VPS SERVER
CLOUD HOST
您当前的位置:&>&&>&
什么是?虚拟主机也叫“”、“”就是把一台运行在互联网上的服务器划分成多个“虚拟”的服务器,每一个虚拟主机都具有独立的域名和完整的Internet服务器(支持WWW、FTP、E-mail等)功能。一台服务器上的不同虚拟主机是各自独立的,并由用户自行管理。但一台服务器主机只能够支持一定数量的虚拟主机,当超过这个数量时,用户将会感到性能急剧下降。 虚拟主机技术是互联网服务器采用的节省服务器硬体成本的技术,虚拟主机技术主要应用于HTTP服务,将一台服务器的某项或者全部服务内容逻辑划分为多个服务单位,对外表现为多个服务器,从而充分利用服务器硬体资源。如果划分是系统级别的,则称为虚拟服务器。&什么是apache 虚拟主机?虚拟主机有两种类型:IP-based 和name-based,前者用于同一台主机上的多个站点具有不同的IP 地址,后者用于同一台主机上的多个站点使用同一个IP 地址,仅依靠名字来区分不同的站点。apache 1.1 版本之后开始支持这两种虚拟主机类型,平常我们一般谈到和用到的虚拟主机都是第二种类型:name-based 。name-based 的限制一些比较老的浏览器无法正确访问虚拟主机的站点,这是因为部分基于http 1.0 的浏览器不发送http 主机头信息(host header)。所有基于http 1.1 的浏览器和部分比较流行的http 1.0 浏览器则不存在此问题。使用安全套接层协议(SSL)的服务器不能使用虚拟主机,这是由于SSL 协议本身的特性决定的。一些由操作系统或者网络设备实现的带宽管理技术会遇到问题,因为它们可能无法通过IP 区分不同的站点。apache配置虚拟主机设置一个name-based 虚拟主机以linux 环境采用apache 服务器为例,设置虚拟主机,需要有至少一个独立外网IP ,至少一个域名,并且可以修改二级域名,并不要求具有自己的DNS 服务器。设置虚拟主机,只需要添加以下行到httpd.conf 文件,这个文件一般在/etc/httpd/conf/httpd.conf 可以找到。NameVirtualHost *:80&VirtualHost *:80&ServerName www.example.comServerAlias example.comDocumentRoot /var/www/html&/VirtualHost&&VirtualHost *:80&ServerName blog.example.comDocumentRoot /var/www/html/blog&/VirtualHost&剩下的工作就是去你的域名服务商处,设置DNS 解析,建立两个主机名,分别为www 与blog,指向的IP 相同,均为这台虚拟主机的IP 地址。这样就可以通过www.example.com 与blog.example.com 访问到同一台主机上的不同站点。题外话:实现形入example.com 的解析,设置主机名为@ ,@ 代表域名自身。实现形入*.example.com 的解析,设置主机名为* 即可。虚拟主机首选:&
版权申明:本站文章部分自网络,如有侵权,请联系028-6,我们收到后立即删除,谢谢!
特别注意:本站所有转载文章言论不代表本站观点!本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。
建设网站可以有多种选择,比如独立服务器,VPS,那为什么要选
Copyright & &&版权所有
电话总机:028- (20线)
400电话:400-028-5800}

我要回帖

更多关于 万网虚拟空间 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信