公司近期决定做一个SEO的宣传站来介绍公司自己的业务,同时也想借助百度的力量吸引一些客户,于是我们选择了些关键词。从选词到网站策划以及网站建设的每个步骤我们都很小心,我们做的每个事情都是想我们的网站列适合网站的蜘蛛的抓取习惯。网站的每个页面都采用DIV+CSS布局,网站的结构也不错,网址采用伪静态的方式更适合蜘蛛的抓取,网站的内容保持伪原创或原创。虽然做了这么多的工作,自认为每个工作都很到位,但是效果真的很打击人,网站内页的收录一直不是很理想,网站的首页快照也超是10天以上,真的很叫人伤心啊,做了这么多的网站都还可以,但是做自己网站的时候,竟然是这个结果,哎!结果不是很理想,这些是个人整理的一些资料分享一些。
& H! u* ^( I" V* X6 n- u1 ]7 A6 H! k2 N9 U! s3 g
PHP CURL函数详解* w9 A1 W8 j# c; F; j6 m
+ i& L! [5 U6 x, V1 C l( g C
PHP中的CURL函数库(Client URL Library Function)
0 r- G0 p$ Z' h3 ]# ?3 W9 c; ~5 U# w; \: r" h
curl_close —关闭一个curl会话: o- T8 t" a. L F i `
" p6 Y" O8 \( x' ]( J! i- K& f
curl_copy_handle —复印一个curl连署资源的所有内容和参变量
" s4 A9 q+ G. r
! D" x# b! H }6 w* Z5 S3 r; B k curl_errno —回返一个包含现时会话不对信息的数码编号
4 B$ X" p8 |& d6 Q! m+ |
( U8 s& ]/ y" _* Y$ I curl_error —回返一个包含现时会话不对信息的字符串; b1 Q5 s# D( c& I) i
0 i7 `( C% {- X, d
curl_exec —执行一个curl会话
5 b) h* p W1 G+ x
: R4 Z: q1 \" `6 q1 H5 R curl_getinfo —获取一个curl连署资源句柄的信息& ^; \% ^5 c# _2 T$ U
0 A7 {: X, I8 p- f6 F/ \
curl_init —初始化一个curl会话2 C# C4 Q" i+ [! `* U
, D, c6 F+ r7 A8 ~" s* j. E curl_multi_add_handle —向curl批办理会话中添加单独的curl句柄资源
: ?2 L6 p& s4 l' [9 i1 p' `6 u% i0 x3 I7 k2 l7 k8 V
curl_multi_close —关闭一个批办理句柄资源% T/ V2 ~7 D T4 v
4 d) I, @/ K9 X: p( V0 l3 L curl_multi_exec —解析一个curl批办理句柄/ M+ l7 D' \- v" u5 K
2 L+ q( ~3 h3 V) U curl_multi_getcontent —回返获取的输出的文本流$ d+ ~! I% l& _* N3 f# v. w, L4 T& L
! n" T* w/ l0 [! V curl_multi_info_read —获取现时解析的curl的相关传输信息
3 ]. z# B5 S+ L' e1 M- O$ A/ d4 ]% `6 C3 y; e# s
curl_multi_init —初始化一个curl批办理句柄资源
7 R3 I- ^* u* C5 |5 D* g c* O. S% N) A+ h8 R
curl_multi_remove_handle —移除curl批办理句柄资源中的某个句柄资源
0 @- z/ A; I# @ f' K- O$ n+ B+ p
* F" w& Q% W! s( m curl_multi_select — Get all the sockets associated with the cURL extension, which can then be "selected" n+ e! W2 h+ C4 D1 G7 [
4 E* }9 e$ V& }, ?1 x curl_setopt_array —以数组的仪式为一个curl设置会话参变量
7 Y9 ^9 p+ P7 Q& c- t' D! p
# X! P6 a: G5 R" Y4 _ curl_setopt —为一个curl设置会话参变量curl_version —获取curl相关的版本信息
5 }8 e- Y2 {9 t2 D( I/ g4 e. S( _3 N: @$ ?# ]: s7 S1 `0 W, X
curl_init()函数的效用初始化一个curl会话,curl_init()函数唯一的一个参变量是可选的,表达一个url地址。
+ w0 S# H+ o- f5 m( i2 V
% E- k5 i3 G: `- K: ? curl_exec()函数的效用是执行一个curl会话,唯一的参变量是curl_init()函数回返的句柄。curl_close()函数的效用是关闭一个curl会话,唯一的参变量是curl_init()函数回返的句柄。
6 q% b F2 Z; B) \9 \& W# x, K# |
( R" {0 p8 \) s4 I curl_version()函数的效用是获取curl相关的版本信息,curl_version()函数有一个参变量,不明白是做啥子的$ j7 b7 k4 A, F$ d
8 |" P/ u4 A) p. A
curl_getinfo()函数的效用是获取一个curl连署资源句柄的信息,curl_getinfo()函数有两个参变量,第一个参变量是curl的资源句柄,第二个参变量是下边一点恒量:8 ~ D0 E# R+ [" ]" D
$ i& Z& R7 P) ]5 j) ]- R
可选的恒量涵盖:
H( f2 ?8 W$ h: p7 a. H) y5 [' p6 o' w7 N2 y/ W \8 Z
CURLINFO_EFFECTIVE_URL最终一个管用的url地址
8 }4 B4 a0 f# V. E; z) f8 H, _, k) y4 \0 q" w
CURLINFO_HTTP_CODE最终一个收到的HTTP代码
2 b8 _- U, u9 _2 h9 f8 G4 }2 G& O }9 S6 u. h# s) b; h: E: z
CURLINFO_FILETIME长程获取文档的时间,假如无法获取,则回返值为“-1”% L' u4 p/ O$ B: _
, U. U& j' Y% f0 h8 K
CURLINFO_TOTAL_TIME最终一次传输所耗费的时间0 s7 z. ~" X& q+ R8 \
* X$ M5 X$ x- r
CURLINFO_NAMELOOKUP_TIME名称解析所耗费的时间# u! O- [- Q& N0 \( V9 S' D1 f
6 r- [2 Z+ ~$ n l& h: ?% A" M CURLINFO_CONNECT_TIME开办连署所耗费的时间% J# a1 m5 K2 b6 f! @) N! b* P% g
2 n) d b# Z* @6 K8 o) a# w/ R# R5 S
CURLINFO_PRETRANSFER_TIME从开办连署到准备传输所使役的时间
/ i$ [% m* h9 U8 Y
4 ?9 c/ G d1 u Z$ j1 F CURLINFO_STARTTRANSFER_TIME从开办连署到传输起始所使役的时间
% Z, F9 i+ o4 F7 N& E+ q! q* v
0 L. W* g3 ]2 X: c- W CURLINFO_REDIRECT_TIME在事务传输起始前重定向所使役的时间
9 Y: K) J3 g5 s5 R3 q
c5 b) h' r/ j CURLINFO_SIZE_UPLOAD上传数据量的总值
; B" I6 I7 R7 z/ ^/ h3 m& F
3 T ?1 w3 N$ _9 f) u CURLINFO_SIZE_DOWNLOAD下载数据量的总值% {, J4 g' v* t4 O
( b4 r) J, w0 c: a CURLINFO_SPEED_DOWNLOAD均等下载速度
$ R3 ?. g( u8 {8 C% c, c% l8 A; G2 v* ]+ o, {& R
CURLINFO_SPEED_UPLOAD均等上传速度' ^" N: H+ k& b3 I7 W- o' U7 z) y5 ]
( L$ J$ w5 U0 l/ g F$ E# l- G
CURLINFO_HEADER_SIZEheader局部的体积9 Z2 |( X; r: F! R8 R
K3 W# N. n7 w3 {) O" l* j
CURLINFO_HEADER_OUT发送烦请的字符串
+ y& B1 d2 r/ d6 l! J- @7 K& o9 |; S4 A" R9 ]3 j. j& q- Z
CURLINFO_REQUEST_SIZE在HTTP烦请中有问题的烦请的体积2 V5 z% J2 v- V6 P, h
: s8 _0 { Q" B3 B, Y& A; E CURLINFO_SSL_VERIFYRESULTResult of SSL certification verification requested by setting CURLOPT_SSL_VERIFYPEER
: n8 {: x4 ?8 Q/ O$ S
8 y! G, Q7 {+ ]; J3 V) Z* Y CURLINFO_CONTENT_LENGTH_DOWNLOAD从Content-Length: field中读取的下载内容长度
, Z: J7 @; G, A% q8 U E0 }: T4 X! W
CURLINFO_CONTENT_LENGTH_UPLOAD上传内容体积的申说
; w; g$ T5 L7 O9 S) i2 \# o6 F" l# I0 q$ g2 R# X3 t" [
CURLINFO_CONTENT_TYPE下载内容的“Content-type”值,门里出身表达服务器没有发送管用的“Content-Type: header”" R8 j+ e7 {6 ^0 ~8 |
G. l( |4 N! P
curl_setopt()函数的效用是为一个curl设置会话参变量。curl_setopt_array()函数的效用是以数组的仪式为一个curl设置会话参变量。
1 }1 K4 i0 n- U) [) H# Z! H* i
2 i$ Y/ ~9 J( }) |! t/ m \'
, T8 p* B! a2 D. G$ S# l0 O y1 z, I
CURLOPT_HEADER => false
7 Z6 ]- _1 s) v3 r
# a0 ?$ l$ t1 b. x* | M& q- h );0 N# c1 B8 m# d3 G
% h L& P' @7 G& Z3 s7 [
curl_setopt_array($ch, $options);
2 d4 y8 ?/ z* A8 _# ~
0 h/ e# w/ r7 L+ L7 o5 I curl_exec($ch);. [. h' z9 o$ Y* g- }% a
( G4 A- x- F/ C; S
curl_close($ch);
( i% f! y9 g* Y2 G S4 X
- ~( m% s2 A; [; O( w fclose($fp);/ D- c! q+ ~& ~
$ [3 b+ W- J3 B6 U; p ?>可设置的参变量有:
5 M( ]; c d3 [6 D4 j# s1 C4 i( e/ T
CURLOPT_AUTOREFERER半自动设置header中的referer信息* {6 J3 Y; w9 W$ M+ S% p
- o2 ~7 \3 m) d CURLOPT_BINARYTRANSFER在启用CURLOPT_RETURNTRANSFER时分将获取数据回返5 u! w- d5 b s2 R
. f$ W l# z1 k) v, Q
CURLOPT_COOKIESESSION启用时curl会仅只传送一个session cookie,疏忽其它的cookie,默认状态下curl会将所有的cookie回返给服务端。session cookie是指那些用来判断服务器端的session是否管用而存在的cookie。
2 X, W( _- b- q6 `( {; w, i I5 _: R
CURLOPT_CRLF启用时将Unix的换行符转换成回车换行符。
1 [! k" |; W7 G( O( R' ?
) V- Z1 ^- }0 T, ]5 M+ T CURLOPT_DNS_USE_GLOBAL_CACHE启用时会启用一个全局的DNS缓存,此项为线程安全的,而且默认为true。1 P+ \ h8 f$ P m* k/ h- F3 c
4 R8 Q |+ L& w, N6 j& y, }; s3 K CURLOPT_FAIL0NERROR预示HTTP面貌码,默认行径是疏忽编号小于等于400的HTTP信息7 @4 M) `# Z4 U
5 i$ F; [: X# q# h0 f/ \- ~$ R
CURLOPT_FILETIME启用时会尝试修改长程文档中的信息。结果信息会经过curl_getinfo()函数的CURLINFO_FILETIME选项回返。
, I) M% [, U! L4 @: f& ]( d9 P; H
CURLOPT_FOLLOWLOCATION启用时会将服务器服务器回返的“Location:”放在header中递归的回返给服务器,使役CURLOPT_MAXREDIRS可以框定递归回返的数量。
$ ]1 X: {. a {" L) f# r$ u/ t5 X* ?: ^' h3 g! e4 K# v
CURLOPT_FORBID_REUSE在完成交互之后强制断裂连署,不得重用。
' F4 {7 y- d* j3 F8 d5 ~+ [0 y# W( W9 M
CURLOPT_FRESH_CONNECT强制获取一个新的连署,替代缓存中的连署。
3 j% q/ ?7 h; G! }/ \% ]8 X' G w3 ?" M
CURLOPT_FTP_USE_EPRT+ E" t4 E4 e0 `6 z/ J! O7 @6 X
* W. r! G& H3 _9 J k TRUE to use EPRT (and LPRT) when doing active FTP downloads. Use FALSE to disable EPRT and LPRT and use PORT only.Added in PHP 5.0.0.
5 r3 ^4 N& D* k. R# B% ]
1 k2 t8 k. ]3 A; ~9 w3 Y CURLOPT_FTP_USE_EPSVTRUE to first try an EPSV command for FTP transfers before reverting back to PASV. Set to FALSE to disable EPSV.# `5 v- {: O6 y6 f& d
# \; i, a4 @- S% n; e CURLOPT_FTPAPPENDTRUE to append to the remote file instead of overwriting it.- R8 G7 U. l/ C. M
2 F: e) \0 t- z% ^& H: x CURLOPT_FTPASCIIAn alias of CURLOPT_TRANSFERTEXT. Use that instead.
* {' q" I' w4 Y2 x" s5 f7 Z3 j, ~$ q
CURLOPT_FTPLISTONLYTRUE to only list the names of an FTP directory.# u% w7 n8 o& e' L1 R
9 I) m' p7 Q0 g6 u& [
CURLOPT_HEADER启用时会将头文件的信息作为数据流输出。
5 u9 t( b# H" s" j" V) f9 L5 N4 x3 V& C% Q4 ~
CURLOPT_HTTPGET启用时会设置HTTP的method为GET,因为GET是默认是,所以只在被修改的况下使役。9 v' u# L$ X) A
9 i% f) x( \8 K3 R c$ ]7 t9 T
CURLOPT_HTTPPROXYTUNNEL启用时会经过HTTP摄理来传输。
' f& X7 Q$ H ?) O2 C
" E0 Z: N n# G# w; m CURLOPT_MUTE讲curl函数中所有修改过的参变量光复默认值。
, |; Q& Y6 S) T- J# P* f' \3 s% i) f, o! d3 E* m* V3 ?& n! e
CURLOPT_NETRC在连署开办之后,过访~/rc文件获取用户名和密码信息连署长程站点。6 D7 h3 W- v0 L
4 Q" H$ n4 k2 T: d/ W CURLOPT_NOBODY启用时将不对HTML中的body局部施行输出。9 m& C2 x( [: Q" n
; s |! F$ R$ |4 W CURLOPT_NOPROGRESS启用时关闭curl传输的进度条,此项的默认设置为true% O3 \0 T7 h3 v3 r+ N: ^& M
3 M1 R, T% K5 k( X CURLOPT_NOSIGNAL启用时疏忽所有的curl传送给php施行的信号。在SAPI多线程传输时此项被默认敞开。- [" ?4 D- S6 Q9 V; u' r
8 t( I; u& d( y
CURLOPT_POST启用时会发送一个常理的POST烦请,类型为:application/x-www-form-urlencoded,就像表单提交的同样。! G; l& ]5 M9 }( C
3 V6 y; V, N0 Y4 K/ A+ z
CURLOPT_PUT启用时准许HTTP发送文件,务必同时设置CURLOPT_INFILE和CURLOPT_INFILESIZE
. h% n& K4 {) t& D, e) g8 i; M$ Z5 y# ^1 }
CURLOPT_RETURNTRANSFER讲curl_exec()获取的信息以文件流的仪式回返,而不是直接输出。7 U# ^& f1 {. m y8 f/ T: a
) [: ^( @1 Q: @& Q6 C
CURLOPT_SSL_VERIFYPEERFALSE to stop cURL from verifying the peer\'s certificate. Alternate certificates to verify against can be specified with the CURLOPT_CAINFO option or a certificate directory can be specified with the CURLOPT_CAPATH option. CURLOPT_SSL_VERIFYHOST may also need to be TRUE or FALSE if CURLOPT_SSL_VERIFYPEER is disabled (it defaults to 2). TRUE by default as of cURL 7.10. Default bundle installed as of cURL 7.10.% v, x$ N, n( X- c* ]& q( g
" R, h- t8 y) U CURLOPT_TRANSFERTEXTTRUE to use ASCII mode for FTP transfers. For LDAP, it retrieves data in plain text instead of HTML. On Windows systems, it will not set STDOUT to binary mode.
N$ F+ k3 L% `3 h2 B' b1 z1 d! q
, F- m1 M. g1 u CURLOPT_UNRESTRICTED_AUTH在使役CURLOPT_FOLLOWLOCATION萌生的header中的多个locations中持续追加用户名和密码信息,纵然域名已发生变更。
) ? g7 y5 l" h1 Y" X, u) J, x) o1 v9 k
CURLOPT_UPLOAD启用时准许文件传输
/ u5 }; w& V' U v" ^: ~4 O. j/ a3 Y7 ?0 X
CURLOPT_VERBOSE启用时会汇报所有的信息,储存在STDERR或指定的CURLOPT_STDERR中0 j' D' b1 T: i' Y5 K- _- a
0 r/ v$ s- p: A2 n5 A, Q3 R3 m
CURLOPT_BUFFERSIZE每每获取的数据中读入缓存的体积,这个值每每都会被充塞。0 F8 M/ S' t. j
$ L8 B L. X! g& b/ @! t 以上就是这近2个月的建站分享,给刚刚步入小小草根做个参考!当然这只是我个人的看法、经验,硬邦邦的大草不要扔刀给我哈!扔点泥巴给我最好了!滋润下我们这些小小草啊!O(∩_∩)O哈哈~希望各位站长给些针对性的意见建议,指导下我怎么修改关键词才好!本文由亿万商学院 http://tv.51yiwan.com/ 收集整理欢迎转载请注明,谢谢合作2 k( ^; I, B- p- |7 X! a
2 j' r# Y0 _- \
|