1、注冊域名提示We couldn't verify that you are human, please try again.
申請域名和主機空間請特別注意:售後服務是關鍵,這類產品80%的成本是服務。有一些服務商降低了價格,服務也下降了。不是找不到人,就是電話打不通,也沒有在線工作人員支持,會很麻煩。一定要先溝通3-5個小時,問清楚了再定。
可以找咱們。現在在線,可以加一下
2、Web前端開發主要學哪些?
了解web前端
Web前端開發是從網頁製作演變而來的,名稱上有很明顯的時代特徵。在互聯網的演化進程中,網頁製作是Web1.0時代產物,那時網站的主要內容是靜態
的,用戶使用網站的行為也以瀏覽為主。2005年以後,互聯網進入Web2.0時代,各種類似桌面軟體的Web應用大量涌現,網站的前端由此發生了翻天覆
地的變化。網頁不再只是承載單一的文字和圖片,各種富媒體讓網頁的內容更加生動,網頁上軟體化的交互形式為用戶提供了更好的使用體驗,這些都是基於前端技
術實現的。說得直白點就是美工photoshop,交互設計,flash,js,html+css。就小規模公司而言,一個技術員都得會這幾樣技能,這樣
很鍛煉人的,慢慢的你就會成為公司的主力。大規模的公司把這些分得很細,所以,你可以精通一門,熟悉其他的,進軍大公司。
網頁開發工具
學習web前端開發,網頁開發工具有FrontPage,會用 Word
的人很容易學會FrontPage。還有一個常用的是Dreamweaver。這兩種都是使用最多的HTML網頁製作工具,我使用的是Dreamweaver
cs6,因為這套軟體提供了一套直觀的可視界面,融合了html5一些新的內容。包括網格布局什麼的。
學習內容
HTML、CSS和JavaScript。html是內容,css是表現,javascript是行為。前端開發的門檻其實非常低,與伺服器端語言先慢後
快的學習曲線相比,前端開發的學習曲線是先快後慢。所以,對於從事IT工作的人來說,前端開發是個不錯的初入點。也正因為如此,前端開發的領域有很多自學
成「才」的同行。html是最基礎的,現在流行的是html5設計,先學會網頁布局。css是用來美化html頁面的為頁面提供布局和格式。最後再學
javascript。如果你把每天看電影、看電視劇的時間用來學習,我想一個星期入門是沒有問題的。
基礎知識:
1. html + css。這部分建議在 www.w3school.com.cn 上學習,邊學邊練,每章後還有小測試。之後可以模仿一些網站做些頁面。本站提供的個人博客模板www.yangqq.com/download/都是比較簡單的單頁,可以下載下來模仿自己做一個。理解css每個元素的屬性,樣式的實現不一定只有一種寫法,多想一想還有沒有什麼需要改進的地方。
《10條HTML代碼編寫技巧》
《CSS簡明教程》
《Div+CSS 規則整理 以及注意問題》
2、JavaScript。不是所有的網頁都必須有js,但是要想實現一些超酷的功能和界面的時候,就需要涉及到js。如果沒有其他編程語言的基礎的話,學起來可能要費些力,還是建議先在
w3school上學習。之後建議馬上看《javascript語言精粹》
《JS經典實例》
3、Photoshop、flash。熟悉會一點兒就行了,沒必要全部都學得精通,當然如果你在學習的過程中,發現你ps或者flash比較感興趣的話,也可以嘗試做美工這一行。
4、html5和css3。可以先了解一下,然後再入手。畢竟IE的瀏覽器大多還不支持。
《學習Html5建站教程(一)Html5簡介》
《學習Html5建站教程(二)Html5 語法與規則》
《學習Html5建站教程(三)Html5博客頁面設計之理論》
《學習Html5建站教程(四)用HTML5做個人的網站》
5、瀏覽器兼容。懂web標准,熟練手寫 xhtml css3 並符合
符合w3c標准。代碼能兼容主流瀏覽器Firfox,Chrome、Safari、IE、Opera。雖然IE6很多都不兼容,但現在還使用的人還是有的。W3C驗證地址:http://jigsaw.w3.org/css-validator/ 通過驗證指定URI的CSS內容,可以幫我們檢查一下有沒有錯誤。
6、熟悉一門後台編程語言 asp、php、jsp等 《關於asp、php、asp.net、jsp的學習心得、介紹及優缺點比較》
web前端設計師前景
遇到很多想換行的朋友,第一句就問,這行賺錢嗎?我相信一句話,沒有付出,是沒有回報的!前面已經說過了,咱們這行門檻是很低的,所以薪資階段也不一樣。
2000初入這行的現在還普遍,工作經驗2年以上,有很多代表性作品的時候,工資在4000左右;高手級別的估計在6000左右,大師級別這個階段的薪資
參考:10000以上(上海北京深圳為例)網頁設計師課程一般包括:Photoshop、Fireworks、用戶界面設計實操,xhtml、css、
dreamweaver、網站架構與網站策劃、flash動畫製作,域名與空間、ftp、dhtml、javascript、動態交互網站(asp、
php、aja)
3、我們是學校網站,通過校園網上網,有固定IP,如何配置內網WEB伺服器,才能讓外網用戶通過域名訪問內網的WE
1)內外是否完全隔離?
2)有無做路由,不然外怎麼訪問到內?
3)內部ip地址是私有地址,必須通過一個固定的外網地址轉發出去
4、關於shopwe和shopex怎麼讓域名換空間
你把原來的網站程序和資料庫刪除,重新安裝成shopex就可以了,域名解析等都不用更改
還有不懂請追問
5、為什麼我在Godaddy上購買域名會出現Unfortunately, we are unable to process your 。。。。。
購買的時候出現這個錯誤提示,需要聯系Godaddy客服,可能是你賬戶出現問題也可能是他們那邊伺服器的問題。這個問題聯系客服之後就會解決的
6、http server怎麼用?
實現自己的http server
Write your own http server
author : Kevin Lynx
Why write your own?
看這個問題的人證明你知道什麼是http server,世界上有很多各種規模的http server,為什麼要自己實現一個?其實沒什麼
理由。我自己問自己,感覺就是在自己娛樂自己,或者說只是練習下網路編程,或者是因為某日我看到某個庫宣稱自己附帶一個小
型的http server時,我不知道是什麼東西,於是就想自己去實現一個。
What's httpd ?
httpd就是http daemon,這個是類unix系統上的名稱,也就是http server。httpd遵循HTTP協議,響應HTTP客戶端的request,
然後返回response。
那麼,什麼是HTTP協議?最簡單的例子,就是你的瀏覽器與網頁伺服器之間使用的應用層協議。雖然官方文檔說HTTP協議可以
建立在任何可靠傳輸的協議之上,但是就我們所見到的,HTTP還是建立在TCP之上的。
httpd最簡單的response是返回靜態的HTML頁面。在這里我們的目標也只是一個響應靜態網頁的httpd而已(也許你願意加入CGI
特性)。
More details about HTTP protocol
在這里有必要講解HTTP協議的更多細節,因為我們的httpd就是要去解析這個協議。
關於HTTP協議的詳細文檔,可以參看rfc2616。但事實上對於實現一個簡單的響應靜態網頁的httpd來說,完全沒必要讀這么一
分冗長的文檔。在這里我推薦<HTTP Made Really Easy>,以下內容基本取自於本文檔。
- HTTP協議結構
HTTP協議無論是請求報文(request message)還是回應報文(response message)都分為四部分:
* 報文頭 (initial line )
* 0個或多個header line
* 空行(作為header lines的結束)
* 可選body
HTTP協議是基於行的協議,每一行以\r\n作為分隔符。報文頭通常表明報文的類型(例如請求類型),報文頭只佔一行;header line
附帶一些特殊信息,每一個header line佔一行,其格式為name:value,即以分號作為分隔;空行也就是一個\r\n;可選body通常
包含數據,例如伺服器返回的某個靜態HTML文件的內容。舉個例子,以下是一個很常見的請求報文,你可以截獲瀏覽器發送的數據
包而獲得:
1 GET /index.html HTTP/1.1
2 Accept-Language: zh-cn
3 Accept-Encoding: gzip, deflate
4 User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727; MAXTHON 2.0)
5 Host: localhost
6 Connection: Keep-Alive
7
我為每一行都添加了行號,第1行就是initial line,2-6行是header lines,7行是一個header line的結束符,沒有顯示出來。
以下是一個回應報文:
1 HTTP/1.1 200 OK
2 Server: klhttpd/0.1.0
3 Content-Type: text/html
4 Content-Length: 67
5
6 <head><head><title>index.html</title></head><body>index.html</body>
第6行就是可選的body,這里是index.html這個文件的內容。
- HTTP request method
因為我們做的事伺服器端,所以我們重點對請求報文做說明。首先看initial line,該行包含幾個欄位,每個欄位用空格分開,例
如以上的GET /index.html HTTP/1.1就可以分為三部分:GET、/index.html、HTTP/1.1。其中第一個欄位GET就是所謂的request
method。它表明請求類型,HTTP有很多method,例如:GET、POST、HEAD等。
就我們的目標而言,我們只需要實現對GET和HEAD做響應即可。
GET是最普遍的method,表示請求一個資源。什麼是資源?諸如HTML網頁、圖片、聲音文件等都是資源。順便提一句,HTTP協議
中為每一個資源設置一個唯一的標識符,就是所謂的URI(更寬泛的URL)。
HEAD與GET一樣,不過它不請求資源內容,而是請求資源信息,例如文件長度等信息。
- More detail
繼續說說initial line後面的內容:
對應於GET和HEAD兩個method,緊接著的欄位就是資源名,其實從這里可以看出,也就是文件名(相對於你伺服器的資源目錄),例
如這里的/index.html;最後一個欄位表明HTTP協議版本號。目前我們只需要支持HTTP1.1和1.0,沒有多大的技術差別。
然後是header line。我們並不需要關注每一個header line。我只羅列有用的header line :
- Host : 對於HTTP1.1而言,請求報文中必須包含此header,如果沒有包含,伺服器需要返回bad request錯誤信息。
- Date : 用於回應報文,用於客戶端緩存數據用。
- Content-Type : 用於回應報文,表示回應資源的文件類型,以MIME形式給出。什麼是MIME?它們都有自己的格式,例如:
text/html, image/jpg, image/gif等。
- Content-Length : 用於回應報文,表示回應資源的文件長度。
body域很簡單,你只需要將一個文件全部讀入內存,然後附加到回應報文段後發送即可,即使是二進制數據。
- 回應報文
之前提到的一個回應報文例子很典型,我們以其為例講解。首先是initial line,第一個欄位表明HTTP協議版本,可以直接以請求
報文為准(即請求報文版本是多少這里就是多少);第二個欄位是一個status code,也就是回應狀態,相當於請求結果,請求結果
被HTTP官方事先定義,例如200表示成功、404表示資源不存在等;最後一個欄位為status code的可讀字元串,你隨便給吧。
回應報文中最好跟上Content-Type、Content-Length等header。
具體實現
正式寫代碼之前我希望你能明白HTTP協議的這種請求/回應模式,即客戶端發出一個請求,然後伺服器端回應該請求。然後繼續
這個過程(HTTP1.1是長連接模式,而HTTP1.0是短連接,當伺服器端返回第一個請求時,連接就斷開了)。
這里,我們無論客戶端,例如瀏覽器,發出什麼樣的請求,請求什麼資源,我們都回應相同的數據:
/**//* 阻塞地接受一個客戶端連接 */
SOCKET con = accept( s, 0, 0 );
/**//* recv request */
char request[1024] = { 0 };
ret = recv( con, request, sizeof( request ), 0 );
printf( request );
/**//* whatever we recv, we send 200 response */
{
char content[] = "<head><head><title>index.html</title></head><body>index.html</body>";
char response[512];
sprintf( response, "HTTP/1.1 200 OK\r\nContent-Type: text/html\r\nContent-Length: %d\r\n\r\n%s", strlen( content ), content );
ret = send( con, response, strlen( response ), 0 );
}
closesocket( con );
程序以最簡單的阻塞模式運行,我們可以將重點放在協議的分析上。運行程序,在瀏覽器里輸入http://localhost:8080/index.html
,然後就可以看到瀏覽器正常顯示content中描述的HTML文件。假設程序在8080埠監聽。
現在你基本上明白了整個工作過程,我們可以把代碼寫得更全面一點,例如根據GET的URI來載入對應的文件然後回應給客戶端。
其實這個很簡單,只需要從initial line里解析出(很一般的字元串解析)URI欄位,然後載入對應的文件即可。例如以下函數:
void http_response( SOCKET con, const char *request )
{
/**//* get the method */
char *token = strtok( request, " " );
char *uri = strtok( 0, " " );
char file[64];
sprintf( file, ".%s", uri );
{
/**//* load the file content */
FILE *fp = fopen( file, "rb" );
if( fp == 0 )
{
/**//* response 404 status code */
char response[] = "HTTP/1.1 404 NOT FOUND\r\n\r\n";
send( con, response, strlen( response ), 0 );
}
else
{
/**//* response the resource */
/**//* first, load the file */
int file_size ;
char *content;
char response[1024];
fseek( fp, 0, SEEK_END );
file_size = ftell( fp );
fseek( fp, 0, SEEK_SET );
content = (char*)malloc( file_size + 1 );
fread( content, file_size, 1, fp );
content[file_size] = 0;
sprintf( response, "HTTP/1.1 200 OK\r\nContent-Type: text/html\r\nContent-Length: %d\r\n\r\n%s", file_size, content );
send( con, response, strlen( response ), 0 );
free( content );
}
}
}