前端伺服器不能運行怎麼辦
① 伺服器出錯
網站伺服器出錯,是指互聯網數據中心中存放網站的伺服器不能正常運行。
伺服器出錯的原因有:
1、內存條壞了或與主板不兼容更換內存條。
2、雙內存不兼容使用同品牌的內存或只要一條內存。
3、內存質量問題更換內存條。
4、散熱問題加強機箱內部的散熱。
5、內存和主板沒插好或其他硬體不兼容重插內存或換個插槽。
6、硬碟有問題更換硬碟。
7、驅動問題重裝驅動,如果是新系統,應先安裝主板驅動。
相關資料:
伺服器是計算機的一種,它比普通計算機運行更快、負載更高、價格更貴。伺服器在網路中為其它客戶機(如PC機、智能手機、ATM等終端甚至是火車系統等大型設備)提供計算或者應用服務。
伺服器具有高速的CPU運算能力、長時間的可靠運行、強大的I/O外部數據吞吐能力以及更好的擴展性。根據伺服器所提供的服務,一般來說伺服器都具備承擔響應服務請求、承擔服務、保障服務的能力。
② 用perl寫的cgi腳本,在伺服器可正常運行,但通過前端無法運行。
如果確定open這一行錯誤,很可能是許可權問題。因為cgi運行時,用戶是WEB支撐平台的用戶,比如是apache,tomcat之類的,很可能沒有許可權進入你那個目錄,或者打開你那個文件。
另外提示一下,調試cgi的話,檢查errlog是個好方法,裡面會有更詳細的錯誤信息,如果你在使用apache,可以看一下/var/log/httpd/error_log。
③ 打開網頁後顯示伺服器運行失敗,怎麼解決
你是在離線工作吧?檢查下文件菜單下的「離線工作」是否打鉤了?
如果不行的話在internet選項里將所有項目都改回到預設狀態看。
④ 伺服器運行失敗是什麼原因如何解決
伺服器運行失敗是因為勾選了「在單獨的進程中打開文件夾窗口」功能,將其取消即可解決問題,取消方法如下:
操作設備:戴爾電腦
操作系統:win7
1、當使用電腦過程中,遇到"伺服器運行失敗「,如下圖所示:
⑤ Web前端工程師如何處理Web前端的異常_
今天小編要跟大家分享的文章是關於Web前端工程師如何處理前端的異常。前端一直是距離用戶最近的一層,隨著產品的日益完善,我們會更加註重用戶體驗,而前端異常卻如鯁在喉,甚是煩人。下面我們就來看一看前端工程師該如何處理前端異常。一、為什麼要處理異常異常是不可控的,會影響最終的呈現結果,但是我們有充分的理由去做這樣的事情。
1.增強用戶體驗;
2.遠程定位問題;
3.未雨綢繆,及早發現問題;
4.無法復線問題,尤其是移動端,機型,系統都是問題;
5.完善的前端方案,前端監控系統;
對於JS而言,我們面對的僅僅只是異常,異常的出現不會直接導致JS引擎崩潰,最多隻會使當前執行的任務終止。二、需要處理哪些異常?對於前端來說,我們可做的異常捕獲還真不少。總結一下,大概如下:
·___S語法錯誤、代碼異常
·___JAX請求異常
·___蔡試醇釉匾斐
·___romise異常
·___frame異常
·___纈_cripterror
·___覽:塗ǘ
下面我會針對每種具體情況來說明如何處理這些異常。三、Try-Catch的誤區try-catch只能捕獲到同步的運行時錯誤,對語法和非同步錯誤卻無能為力,捕獲不到。
1.同步運行時錯誤:
try{
letname='jartto'
console.log(nam);
}catch(e){
console.log('捕獲到異常:',e);
}
輸出:
捕獲到異常:ReferenceError:namisnotdefined
at:3:15
2.不能捕獲到語法錯誤,我們修改一下代碼,刪掉一個單引號:
try{
letname='jartto;
console.log(nam);
}catch(e){
console.log('捕獲到異常:',e);
}
輸出:
UncaughtSyntaxError:Invalidorunexpectedtoken
不過語法錯誤在我們開發階段就可以看到,應該不會順利上到線上環境。
3.非同步錯誤
try{
setTimeout(()=>{
undefined.map(v=>v);
},1000)
}catch(e){
console.log('捕獲到異常:',e);
}
我們看看日誌:
UncaughtTypeError:Cannotreadproperty'map'of
undefined
atsetTimeout(:3:11)
並沒有捕獲到異常,這是需要我們特別注意的地方。四、window.onerror不是萬能的當JS運行時錯誤發生時,window會觸發一個ErrorEvent介面的error事件,並執行window.onerror()。/**
*@param{String}message錯誤信息
*@param{String}source出錯文件
*@param{Number}lineno行號
*@param{Number}colno列號
*@param{Object}errorError對象(對象)
*/
window.onerror=function(message,source,lineno,colno,error){
console.log('捕獲到異常:',{message,source,lineno,colno,error});
}
1.首先試試同步運行時錯誤
window.onerror=function(message,source,lineno,colno,
error){
//message:錯誤信息(字元串)。
//source:發生錯誤的腳本URL(字元串)
//lineno:發生錯誤的行號(數字)
//colno:發生錯誤的列號(數字)
//error:Error對象(對象)
console.log('捕獲到異常:',{message,source,lineno,colno,
error});
}
Jartto;
可以看到,我們捕獲到了異常:
2.再試試語法錯誤呢?
window.onerror=function(message,source,lineno,colno,
error){
console.log('捕獲到異常:',{message,source,lineno,colno,error});
}
letname='Jartto
控制台列印出了這樣的異常:
UncaughtSyntaxError:Invalidorunexpectedtoken
什麼,竟然沒有捕獲到語法錯誤?
3.懷著忐忑的心,我們最後來試試非同步運行時錯誤:
window.onerror=function(message,source,lineno,colno,
error){
console.log('捕獲到異常:',{message,source,lineno,colno,error});
}
setTimeout(()=>{
Jartto;
});
控制台輸出了:
捕獲到異常:{message:"Uncaught
ReferenceError:Jarttoisnotdefined",source:
"http://127.0.0.1:8001/",lineno:36,colno:5,error:
ReferenceError:Jarttoisnotdefined
atsetTimeout(http://127.0.0.1:8001/:36:5)}
4.接著,我們試試網路請求異常的情況:
我們發現,不論是靜態資源異常,或者介面異常,錯誤都無法捕獲到。
補充一點:window.onerror函數只有在返回true的時候,異常才不會向上拋出,否則即使是知道異常的發生控制台還是會顯示UncaughtError:xxxxx
window.onerror=function(message,source,lineno,colno,
error){
console.log('捕獲到異常:',{message,source,lineno,colno,error});
returntrue;
}
setTimeout(()=>{
Jartto;
});
控制台就不會再有這樣的錯誤了:
UncaughtReferenceError:Jarttoisnotdefined
atsetTimeout((index):36)
需要注意:onerror最好寫在所有JS腳本的前面,否則有可能捕獲不到錯誤;onerror無法捕獲語法錯誤;
到這里基本就清晰了:在實際的使用過程中,onerror主要是來捕獲預料之外的錯誤,而try-catch則是用來在可預見情況下監控特定的錯誤,兩者結合使用更加高效。
問題又來了,捕獲不到靜態資源載入異常怎麼辦?五、window.addEventListener當一項資源(如圖片或腳本)載入失敗,載入資源的元素會觸發一個Event介面的error事件,並執行該元素上的onerror()處理函數。這些error事件不會向上冒泡到window,不過(至少在Firefox中)能被單一的window.addEventListener捕獲。
window.addEventListener('error',(error)=>{
console.log('捕獲到異常:',error);
},true)
控制台輸出:
SHAPE*MERGEFORMAT
由於網路請求異常不會事件冒泡,因此必須在捕獲階段將其捕捉到才行,但是這種方式雖然可以捕捉到網路請求的異常,但是無法判斷HTTP的狀態是404還是其他比如500等等,所以還需要配合服務端日誌才進行排查分析才可以。
需要注意:
·___煌榔饗路禱氐_rror對象可能不同,需要注意兼容處理。
·___枰⒁獗苊_ddEventListener重復監聽。六、PromiseCatch在promise中使用catch可以非常方便的捕獲到非同步error,這個很簡單。
沒有寫catch的Promise中拋出的錯誤無法被onerror或try-catch捕獲到,所以我們務必要在Promise中不要忘記寫catch處理拋出的異常。
解決方案:為了防止有漏掉的Promise異常,建議在全局增加一個對unhandledrejection的監聽,用來全局監聽UncaughtPromiseError。使用方式:
window.addEventListener("unhandledrejection",
function(e){
console.log(e);
});
我們繼續來嘗試一下:
window.addEventListener("unhandledrejection",
function(e){
e.preventDefault()
console.log('捕獲到異常:',e);
returntrue;
});
Promise.reject('promiseerror');
可以看到如下輸出:
那如果對Promise不進行catch呢?
window.addEventListener("unhandledrejection",
function(e){
e.preventDefault()
console.log('捕獲到異常:',e);
returntrue;
});
ewPromise((resolve,reject)=>{
reject('jartto:promiseerror');
});
嗯,事實證明,也是會被正常捕獲到的。
所以,正如我們上面所說,為了防止有漏掉的Promise異常,建議在全局增加一個對unhandledrejection的監聽,用來全局監聽UncaughtPromiseError。
補充一點:如果去掉控制台的異常顯示,需要加上:
event.preventDefault();七、VUEerrorHandlerVue.config.errorHandler=(err,vm,info)=>{
console.error('通過vue
errorHandler捕獲的錯誤');
console.error(err);
console.error(vm);
console.error(info);
}八、React異常捕獲React16提供了一個內置函數componentDidCatch,使用它可以非常簡單的獲取到react下的錯誤信息
componentDidCatch(error,info){
console.log(error,info);
}
除此之外,我們可以了解一下:errorboundaryUI的某部分引起的JS錯誤不應該破壞整個程序,為了幫React的使用者解決這個問題,React16介紹了一種關於錯誤邊界(errorboundary)的新觀念。
需要注意的是:errorboundaries並不會捕捉下面這些錯誤。
1.事件處理器2.非同步代碼3.服務端的渲染代碼4.在errorboundaries區域內的錯誤
我們來舉一個小例子,在下面這個componentDIdCatch(error,info)里的類會變成一個errorboundary:
.Component{
constructor(props){
super(props);
this.state={hasError:false};
}
componentDidCatch(error,info){
//DisplayfallbackUI
this.setState({hasError:true});
//
logErrorToMyService(error,info);
}
render(){
if(this.state.hasError){
//
returnSomethingwentwrong.
;
}
returnthis.props.children;
}
}
然後我們像使用普通組件那樣使用它:
componentDidCatch()方法像JS的catch{}模塊一樣工作,但是對於組件,只有class類型的組件(classcomponent)可以成為一個errorboundaries。
實際上,大多數情況下我們可以在整個程序中定義一個errorboundary組件,之後就可以一直使用它了!九、iframe異常對於iframe的異常捕獲,我們還得借力window.onerror:
window.onerror=function(message,source,lineno,colno,
error){
console.log('捕獲到異常:',{message,source,lineno,colno,error});
}
一個簡單的例子可能如下:
frameborder="0">
十、Scripterror一般情況,如果出現Scripterror這樣的錯誤,基本上可以確定是出現了跨域問題。這時候,是不會有其他太多輔助信息的,但是解決思路無非如下:
跨源資源共享機制(CORS):我們為script標簽添加crossOrigin屬性。
或者動態去添加js腳本:
constscript=document.createElement('script');
script.crossOrigin='anonymous'
script.src=url;
document.body.appendChild(script);
特別注意,伺服器端需要設置:Access-Control-Allow-Origin
此外,我們也可以試試這個-解決ScriptError的另類思路:
constoriginAddEventListener=EventTarget.prototype.addEventListener;
EventTarget.prototype.addEventListener=function(type,listener,options){
constwrappedListener=function(...args){
try{
returnlistener.apply(this,args);
}
catch(err){
throwerr;
}
}
returnoriginAddEventListener.call(this,type,wrappedListener,options);
}
簡單解釋一下:
·___男戳_ventTarget的addEventListener方法;
·___源氳_istener進行包裝,返回包裝過的listener,對其執行進行try-catch;
·___榔韃換岫_ry-catch起來的異常進行跨域攔截,所以catch到的時候,是有堆棧信息的;
·___匭_hrow出來異常的時候,執行的是同域代碼,所以window.onerror捕獲的時候不會丟失堆棧信息;
利用包裝addEventListener,我們還可以達到「擴展堆棧」的效果:
(()=>{
constoriginAddEventListener=EventTarget.prototype.addEventListener;
EventTarget.prototype.addEventListener=function(type,listener,options){
+//捕獲添加事件時的堆棧
+constaddStack=newError(`Event(${type})`).stack;
constwrappedListener=function(...args){
try{
returnlistener.apply(this,args);
}
catch(err){
+//異常發生時,擴展堆棧
+err.stack+='
'+addStack;
throwerr;
}
}
returnoriginAddEventListener.call(this,type,wrappedListener,options);
}
})();十一、崩潰和卡頓卡頓也就是網頁暫時響應比較慢,JS可能無法及時執行。但崩潰就不一樣了,網頁都崩潰了,JS都不運行了,還有什麼辦法可以監控網頁的崩潰,並將網頁崩潰上報呢?
崩潰和卡頓也是不可忽視的,也許會導致你的用戶流失。
1.利用window對象的load和beforeunload事件實現了網頁崩潰的監控。不錯的文章,推薦閱讀:Logging
InformationonBrowserCrashes。window.addEventListener('load',function(){
sessionSt
⑥ 電腦提示 伺服器運行失敗 怎麼辦
可能是文件夾設置錯誤,這會導致管理explorer.exe伺服器運行失敗,所以會提示伺服器運行失敗 。
解決方法:
1.搜索「文件夾選項」,然後點擊打開
拓展資料:
伺服器,也稱伺服器,是提供計算服務的設備。由於伺服器需要響應服務請求,並進行處理,因此一般來說伺服器應具備承擔服務並且保障服務的能力。
伺服器的構成包括處理器、硬碟、內存、系統匯流排等,和通用的計算機架構類似,但是由於需要提供高可靠的服務,因此在處理能力、穩定性、可靠性、安全性、可擴展性、可管理性等方面要求較高。
在網路環境下,根據伺服器提供的服務類型不同,分為文件伺服器,資料庫伺服器,應用程序伺服器,WEB伺服器等。
⑦ apache前端伺服器,監控突然報警,load繁忙
linux負載過重。
CPU高、Load高
通過top命令查找佔用CPU最高的進程PID;
通過top-HpPID查找佔用CPU最高的線程TID;
對於java程序,使用jstack列印線程堆棧信息;
通過printf%xtid列印出最消耗CPU線程的十六進制;
在堆棧信息中查看該線程的堆棧信息;
⑧ 伺服器異常怎麼辦
造成伺服器異常的原因
有好多種
1、伺服器所在的機房設備出現故障
2、用戶操作不當
3、病毒侵害
4、伺服器故障
5、網路故障
二、伺服器常見的異常問題及解決辦法
1、機房設備故障引發的伺服器不能正常運行
在機房配備專業人員做好日常管理和維護,及時檢查和購買新的設備或者伺服器。
2、用戶操作不當引發的異常
公司要僱用專業人員管理和維護好伺服器,降低出現故障的幾率,以便第一時間能夠及時處理問題,降低風險,減少損失。
3、網站打不開、被跳轉、網站顯示錯誤等
這時候可以下載專業的正版查毒軟體,對電腦進行定期的全面病毒查殺,以絕後患。
4、用戶無法打開網頁
出現這種問題,可以耐心等候一段時間再進行再次訪問,也可以多刷新幾遍網頁試試,並趕緊對伺服器進行修復。
5、被DNS劫持出現的網路故障
這種情況是電腦上的其他應用都可以正常運行,但是網站卻打不開,很有可能就是網站被DNS劫持了,需要重新設置或修改DNS地址。
6、系統藍屏、頻繁死機、重啟、反映速度遲鈍
伺服器的結構與普通電腦的構成是十分相似的,出現這種情況是感染了病毒引起的,也有可能是系統漏洞、軟體沖突、硬體故障等原因造成的。遇到這種問題就要及時殺毒,修復系統漏洞和硬體故障,清理緩存垃圾。
7、遠程桌面連接超出最大連接數
如果登錄後忘記注銷伺服器默認允許的2個連接,而是直接關閉遠程桌面,這種時候可能就要重啟伺服器,並且是在高峰期的話,就很容易造成損失。這種異常問題,就要利用「mstsc/console」指令進行強行登陸,具體操作就是打開「運行」框,輸入「mstsc/v:xxx.xxx.xxx.xxx(伺服器IP)/console」,即可強行登陸到遠程桌面。
8、出現無法刪除的文件
如果這些無法刪除的文件還在運行中,可以重啟電腦,然後刪除。另一種辦法是,運行CMD,輸入「arrtib-a-s-h-r」和想要刪除的文件夾名,最後輸入「del」,這樣想要刪除的文件夾即可刪除,但是運行該命令後無法恢復,要謹慎使用。
9、系統埠隱患
對於伺服器來說,首先要保證的就是它的穩定性和安全性。因此,我們只要保留的是伺服器最基本的功能就可以了,音效卡一般都是默認禁止的。我們不會用到很多功能,也不需要很多的埠支持。這時候,我們就關掉一些不必要的、風險大的埠,例如3389、80等埠,用修改注冊表的方式將其設置成不特殊的秘密埠,這樣可以消除伺服器埠的安全隱患。
⑨ 伺服器打不開怎麼辦
一、網路設置的問題
這種原因比較多出現在需要手動指定IP、網關、DNS伺服器聯網方式下,及使用代理伺服器上網的。仔細檢查計算機的網路設置。
二、DNS伺服器的問題
當IE無法瀏覽網頁時,可先嘗試用IP地址來訪問,如用 Bbs.winzheng.com 的http://218.30.80.30,如果可以訪問,那麼應該是DNS的問題,造成DNS的問題可能是連網時獲取DNS出錯或DNS伺服器本身問題,這時你可以手動指定DNS服務(地址可以是你當地ISP提供的DNS伺服器地址,也可以用其它地方可正常使用DNS伺服器地址。)在網路的屬性里進行,(控制面板—網路和拔號連接—本地連接—右鍵屬性—TCP/IP協議—屬性—使用下面的DNS伺服器地址)。不同的ISP有不同的DNS地址。有時候則是路由器或網卡的問題,無法與ISP的DNS服務連接,這種情況的話,可把路由器關一會再開,或者重新設置路由器。
還有一種可能,是本地DNS緩存出現了問題。為了提高網站訪問速度,系統會自動將已經訪問過並獲取IP地址的網站存入本地的DNS緩存里,一旦再對這個網站進行訪問,則不再通過DNS伺服器而直接從本地DNS緩存取出該網站的IP地址進行訪問。所以,如果本地DNS緩存出現了問題,會導致網站無法訪問。可以在「運行」中執行ipconfig /flushdns來重建本地DNS緩存。
三、IE瀏覽器本身的問題
當IE瀏覽器本身出現故障時,自然會影響到瀏覽了;或者IE被惡意修改破壞也會導致無法瀏覽網頁。這時可以嘗試用「黃山IE修復專家」來修復(建議到安全模式下修復),或者重新IE(如重裝IE遇到無法重新的問題,可參考:附一解決無法重裝IE)
四、網路防火牆的問題
如果網路防火牆設置不當,如安全等級過高、不小心把IE放進了阻止訪問列表、錯誤的防火牆策略等,可嘗試檢查策略、降低防火牆安全等級或直接關掉試試是否恢復正常。
五、網路協議和網卡驅動的問題
IE無法瀏覽,有可能是網路協議(特別是TCP/IP協議)或網卡驅動損壞導致,可嘗試重新網卡驅動和網路協議。
六、HOSTS文件的問題
HOSTS文件被修改,也會導致瀏覽的不正常,解決方法當然是清空HOSTS文件里的內容。
⑩ 伺服器不能正常啟動了怎麼辦
由於突然停電、經常違章關機或某些別的原因,可能造成伺服器硬碟卷的損傷。其現
象有多種,例如:伺服器無法正常安裝卷,或伺服器能正常啟動,但工作站不能與伺服器連接等
,出現類似下面的提示:「Mirror 「Volume not mounted」、「copies of directories and
name space not match」。此時,可以採用卷修復方法,對不太嚴重的錯誤進行修復。Vrepair
(Volume Repair)是一個功能強大的可裝入模塊,可以裝入對卷進行修復,具體的操作步驟如下: (1)、把此卷卸下,輸入以下命令:
Dismount volume-name (其中,volume-name為要修復的卷名)
(2)、在伺服器控制台上鍵入以下命令:
Load Vrepair
(3)、進入菜單系統,首先選擇「Repair a Volume」,然後屏幕提示:
Total errors:0
Current settings:
1.Pause after each error
2.Do not log errors to a file
Press F1 to change setting
在修復時如果屏幕提示錯誤較多,可按 F1 鍵不必讓 Vrepair 在每個錯誤處停下來,可
以大大提高修復速度。
(4)、當 Vrepair 運行結束後,屏幕提示:「Write vrepairs to the disk(y/n)?」,
鍵入「y」將修復結果寫入磁碟,進行如此操作後,若卷仍未修復,可再進入 Vrepair 菜單中選
擇「Set Vrepair Option」項,運行完後,卷一般會安裝成功。如仍不能安裝,則必須刪除這個