公司近期决定做一个SEO的宣传站来介绍公司自己的业务,同时也想借助百度的力量吸引一些客户,于是我们选择了些关键词。从选词到网站策划以及网站建设的每个步骤我们都很小心,我们做的每个事情都是想我们的网站列适合网站的蜘蛛的抓取习惯。网站的每个页面都采用DIV+CSS布局,网站的结构也不错,网址采用伪静态的方式更适合蜘蛛的抓取,网站的内容保持伪原创或原创。虽然做了这么多的工作,自认为每个工作都很到位,但是效果真的很打击人,网站内页的收录一直不是很理想,网站的首页快照也超是10天以上,真的很叫人伤心啊,做了这么多的网站都还可以,但是做自己网站的时候,竟然是这个结果,哎!结果不是很理想,这些是个人整理的一些资料分享一些。 }, ?% e- G* y) w, {* s6 [' O! T* i+ l
/ Y1 ^2 S$ R" ?" A% a. e$ L PHP CURL函数详解
/ F( ~7 O6 O, o# i) H* o7 N8 G: Q/ T, ?5 r# j/ v
PHP中的CURL函数库(Client URL Library Function)
& ?% r% v% \; X' Z: y; M
) B& H9 _2 f/ ^/ U {6 K- h+ | curl_close —关闭一个curl会话1 Q `) E4 [2 B" p5 `& w4 j
! S% _; s) ?9 g ^ curl_copy_handle —复印一个curl连署资源的所有内容和参变量0 W4 m/ \ Z1 u9 m+ O
$ v, V% G0 I7 o" z, F
curl_errno —回返一个包含现时会话不对信息的数码编号
X( i$ L d. A1 w
+ T; n) J* H' V( m& I curl_error —回返一个包含现时会话不对信息的字符串' w' J& g6 S, X2 G/ i
( c! G q$ N% i0 O$ D- ` curl_exec —执行一个curl会话
( Q* V3 U; P9 x6 s3 P+ i# e$ c/ B# y/ s3 L9 p* J* X) x
curl_getinfo —获取一个curl连署资源句柄的信息' a* n+ N. I! z/ A8 m/ g$ S
1 Z) R/ c% \9 ^6 Z$ k curl_init —初始化一个curl会话
* C4 [5 a4 f+ k8 Q# F
" N j5 `1 l- q$ {2 F curl_multi_add_handle —向curl批办理会话中添加单独的curl句柄资源
* D; b0 e9 W4 e0 A, p5 V- k" A4 Y2 d6 |* ^
curl_multi_close —关闭一个批办理句柄资源
1 s& u7 f% ^) ~8 L0 |+ e; s8 J. s2 b+ w- R, v* M4 v _/ D
curl_multi_exec —解析一个curl批办理句柄
! ]4 v# n6 h$ t
& S% {# y4 s7 V+ {0 n curl_multi_getcontent —回返获取的输出的文本流
: o5 k9 f) ~" @9 m2 I- S; @, z7 Q- s1 }
curl_multi_info_read —获取现时解析的curl的相关传输信息+ s3 Q# u; l$ J, M( W
0 x" {, A* J' C7 C9 E8 h8 L curl_multi_init —初始化一个curl批办理句柄资源
0 T( ~3 F' q) u3 r. Q. O, z0 e/ D1 L; f7 f* }
curl_multi_remove_handle —移除curl批办理句柄资源中的某个句柄资源
3 g* H8 J7 A% D w
5 V8 _6 u: m0 c: C4 v curl_multi_select — Get all the sockets associated with the cURL extension, which can then be "selected"6 ^/ x+ l0 k: ?9 \5 R; I
4 t0 ], L/ P# {8 H
curl_setopt_array —以数组的仪式为一个curl设置会话参变量
|. Q# b. z+ w, P) {8 m \3 R- { C% E7 k
curl_setopt —为一个curl设置会话参变量curl_version —获取curl相关的版本信息
# y7 g2 e! U% J/ h" h# k; T# v: n0 r
0 m% w7 n6 |" ]7 j; o: _* S2 M2 B curl_init()函数的效用初始化一个curl会话,curl_init()函数唯一的一个参变量是可选的,表达一个url地址。- F* M+ B/ ~6 U/ M* R
4 \3 {: I5 L& [. r! f9 W- w9 @; w( z" ?
curl_exec()函数的效用是执行一个curl会话,唯一的参变量是curl_init()函数回返的句柄。curl_close()函数的效用是关闭一个curl会话,唯一的参变量是curl_init()函数回返的句柄。
, x1 B" B& @+ q: b
. S: r; Z5 W) B, R) ? h curl_version()函数的效用是获取curl相关的版本信息,curl_version()函数有一个参变量,不明白是做啥子的# g5 E$ w% C- m( ^+ D
: E6 ]: r6 W6 T- u" f4 S& C curl_getinfo()函数的效用是获取一个curl连署资源句柄的信息,curl_getinfo()函数有两个参变量,第一个参变量是curl的资源句柄,第二个参变量是下边一点恒量:. B/ q" X% j) d, L( m
" M* F$ ^1 x0 n: `4 w
可选的恒量涵盖:
) n3 r- _- @2 m! X8 ?
. ^: M3 v9 A* ] CURLINFO_EFFECTIVE_URL最终一个管用的url地址$ a! x* F: A; G% R+ z
9 D/ ]" V( y% k CURLINFO_HTTP_CODE最终一个收到的HTTP代码# \2 |$ V6 [7 Q) U
* f- r; d, N4 G CURLINFO_FILETIME长程获取文档的时间,假如无法获取,则回返值为“-1”+ C9 ^; u. I' M( G0 ?: \
* A; M o+ q9 ]+ I7 P6 v CURLINFO_TOTAL_TIME最终一次传输所耗费的时间0 S. B0 Y0 s( U0 [
" Q- O, W" l8 X4 r4 Z+ _
CURLINFO_NAMELOOKUP_TIME名称解析所耗费的时间
) v6 P8 |. R; [+ b
0 Y5 J3 Z4 e: z/ i$ g CURLINFO_CONNECT_TIME开办连署所耗费的时间
0 ^: B% ~7 p/ c' ^
: w3 q9 `0 } }2 G2 @# f! F2 u CURLINFO_PRETRANSFER_TIME从开办连署到准备传输所使役的时间
( P+ n7 h9 t$ D1 A, s" W$ f; C! R E- r" _7 M0 G$ d2 o
CURLINFO_STARTTRANSFER_TIME从开办连署到传输起始所使役的时间, X& k6 S9 _9 f/ H9 Z9 B
2 A3 P# I/ \5 g+ P" v$ R) [
CURLINFO_REDIRECT_TIME在事务传输起始前重定向所使役的时间
2 v x' F# P" `/ {- s$ G6 ^
+ f) w' W! r' @( b# z7 U. c CURLINFO_SIZE_UPLOAD上传数据量的总值- V, o. t; v# ~$ \
6 |/ g+ Q% M4 o' a7 F% u4 }+ K
CURLINFO_SIZE_DOWNLOAD下载数据量的总值# y8 A4 y% C8 a$ v! t+ w% \( b
$ \% j4 F: v, [1 o0 w( m. x' N
CURLINFO_SPEED_DOWNLOAD均等下载速度
4 T9 L; X! ]8 c& v ^% Y% m
$ L& G, Y: r. i- |- m CURLINFO_SPEED_UPLOAD均等上传速度7 n. k1 I" Z: t- `; q, T
8 H( u' B$ E8 I1 y8 V1 l6 `, W CURLINFO_HEADER_SIZEheader局部的体积( ~3 h' I+ M, G# ?% M9 @9 D0 H
- ~; s6 l9 k7 {- G CURLINFO_HEADER_OUT发送烦请的字符串
% E5 K* ]8 z9 W. t F( F$ G
6 P! _5 u- R8 y CURLINFO_REQUEST_SIZE在HTTP烦请中有问题的烦请的体积
9 ~' `2 O5 b9 t9 E- A$ R$ } z2 D! L V) E7 D( w4 w1 t( {
CURLINFO_SSL_VERIFYRESULTResult of SSL certification verification requested by setting CURLOPT_SSL_VERIFYPEER; a0 k# W+ h1 \1 u' M/ ?6 P D
" P- K2 q) A! p+ U m P9 |: D, a# } CURLINFO_CONTENT_LENGTH_DOWNLOAD从Content-Length: field中读取的下载内容长度
$ o9 P( K# }8 r' j1 N1 v2 O5 g% y4 Z
CURLINFO_CONTENT_LENGTH_UPLOAD上传内容体积的申说
: N3 j6 j8 k: u' p9 T1 R+ ^& q E6 d; K4 T) U# a6 ~1 @
CURLINFO_CONTENT_TYPE下载内容的“Content-type”值,门里出身表达服务器没有发送管用的“Content-Type: header”
# G" D S2 W) m2 D
0 ]2 I" P* M( |( M curl_setopt()函数的效用是为一个curl设置会话参变量。curl_setopt_array()函数的效用是以数组的仪式为一个curl设置会话参变量。
( ]" H( ~8 J3 ]! ^/ I# V9 O, o3 k) x0 c) y* E' {
\'
" B; N- Q+ p7 N0 P% N" F( u( V6 @- l# Y& K
CURLOPT_HEADER => false/ P X; n2 D6 {: h5 l8 {( R! o
( G2 p; t( A- W g" j2 P1 W, _
);
( p4 f$ N5 Z# X3 ^( i7 I# G
+ X7 n; t/ I. Y$ T' ?3 b curl_setopt_array($ch, $options);5 G0 z% {0 y; j S( G
2 X) W: t+ {+ k# y8 ]3 Z. \0 X curl_exec($ch);% I4 q! w9 g8 ?7 h/ ?; q. K4 ~
1 F7 [3 N. A+ u6 y( t' A+ C# I curl_close($ch);/ `, ?9 ?, d: E* B/ p o
" X% z# F; g$ p5 ]( n1 B5 C
fclose($fp);$ Z& n# [* H3 {$ C% P6 x
3 v8 r& {* Y) G- t) t+ t9 b0 _
?>可设置的参变量有:
9 ^+ d" \2 U1 x. r) t K
8 z0 O6 ~+ N. u! q2 f/ E/ z CURLOPT_AUTOREFERER半自动设置header中的referer信息7 T1 }5 j6 A) K Z! l9 C0 Z2 r
. _! ?: L" \3 w3 x8 `4 h- c. c
CURLOPT_BINARYTRANSFER在启用CURLOPT_RETURNTRANSFER时分将获取数据回返1 S: K1 ~+ d: b5 ^9 P
8 b0 W1 h% o+ z% }* C
CURLOPT_COOKIESESSION启用时curl会仅只传送一个session cookie,疏忽其它的cookie,默认状态下curl会将所有的cookie回返给服务端。session cookie是指那些用来判断服务器端的session是否管用而存在的cookie。
6 G& I% S) l/ D. G1 S& `) ? n; w& L3 ^5 p% A( ^! j8 I! |1 U
CURLOPT_CRLF启用时将Unix的换行符转换成回车换行符。' G( N' o- E2 Q. \3 g, H& Q# L$ w; A
@ ~9 S6 f8 b# F
CURLOPT_DNS_USE_GLOBAL_CACHE启用时会启用一个全局的DNS缓存,此项为线程安全的,而且默认为true。
3 |' j+ @" e! Q9 I) L* l. ~ ?6 d4 K- p* c1 y
CURLOPT_FAIL0NERROR预示HTTP面貌码,默认行径是疏忽编号小于等于400的HTTP信息
8 |4 w6 L4 r; R6 u6 C7 k) q$ e- R$ R. O
CURLOPT_FILETIME启用时会尝试修改长程文档中的信息。结果信息会经过curl_getinfo()函数的CURLINFO_FILETIME选项回返。
* J) j! {% }$ |& Q/ `( J& i( ^% M- k r
CURLOPT_FOLLOWLOCATION启用时会将服务器服务器回返的“Location:”放在header中递归的回返给服务器,使役CURLOPT_MAXREDIRS可以框定递归回返的数量。* }; T& |( a9 _) @
' s) p; G3 ]7 N# o4 c2 R CURLOPT_FORBID_REUSE在完成交互之后强制断裂连署,不得重用。: D; x& |: t4 B) W$ ^
, ~/ h' b; Z* G* G+ \# Y
CURLOPT_FRESH_CONNECT强制获取一个新的连署,替代缓存中的连署。9 e: y. R y) ^3 h# y' O) G/ @
" |' s& `. `9 z5 } \$ {# t
CURLOPT_FTP_USE_EPRT% [# h& c& B. w8 l' S" P
0 y2 S$ L+ L" L& G; j G! n
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., l* I5 K0 F" q+ x2 ^1 p! P7 Y
# s6 D! b; j5 R) O# U: ?
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 U1 h5 [9 r" u; U! u( c; j' D9 ]$ M0 L& V+ ^. a
CURLOPT_FTPAPPENDTRUE to append to the remote file instead of overwriting it.( ]/ W5 }# @( v, U& |8 d( A
" G# F- N9 L+ X( K CURLOPT_FTPASCIIAn alias of CURLOPT_TRANSFERTEXT. Use that instead.0 F7 l: q5 T7 h7 \, O; z9 N+ _
$ d3 D, E3 o5 _% [7 ^! H' ` CURLOPT_FTPLISTONLYTRUE to only list the names of an FTP directory.
8 e9 y8 F+ q/ P8 J3 f8 y$ x4 y- E" J. _" }3 Z
CURLOPT_HEADER启用时会将头文件的信息作为数据流输出。
' o. i: x7 Y6 y& j9 x4 y* {# I2 D1 l5 b: u# p% z; q
CURLOPT_HTTPGET启用时会设置HTTP的method为GET,因为GET是默认是,所以只在被修改的况下使役。* O4 K/ v, n2 i2 K
# C0 |8 |/ p3 r1 I* I, V3 I CURLOPT_HTTPPROXYTUNNEL启用时会经过HTTP摄理来传输。" i5 Y# U* m4 F8 `+ c
! d7 q/ ]2 O# k5 g* q$ p
CURLOPT_MUTE讲curl函数中所有修改过的参变量光复默认值。' E, T7 ]# \3 h
& q$ L* e" N/ T% p, D o CURLOPT_NETRC在连署开办之后,过访~/rc文件获取用户名和密码信息连署长程站点。 E$ x! h! S. G: O2 z
6 U6 e! A+ i" U( O! U- S
CURLOPT_NOBODY启用时将不对HTML中的body局部施行输出。- R* k% C ]1 A
" ^+ a5 X1 `% f+ P' z
CURLOPT_NOPROGRESS启用时关闭curl传输的进度条,此项的默认设置为true9 z2 j3 j* Z4 b% X" I' ]# O& y
6 i* h# z/ I& q6 ]2 S! w$ F
CURLOPT_NOSIGNAL启用时疏忽所有的curl传送给php施行的信号。在SAPI多线程传输时此项被默认敞开。
$ z9 n5 [* b# Q) G% j! ?# w: J' q$ L. C7 i; D. d$ E# k
CURLOPT_POST启用时会发送一个常理的POST烦请,类型为:application/x-www-form-urlencoded,就像表单提交的同样。
5 }: G8 ?( G" i" F$ b3 ^9 d, C- u/ q6 p! O
CURLOPT_PUT启用时准许HTTP发送文件,务必同时设置CURLOPT_INFILE和CURLOPT_INFILESIZE
8 o" @7 t" t- H4 d- k! C9 b) S* Q# [' E: `0 R8 ~
CURLOPT_RETURNTRANSFER讲curl_exec()获取的信息以文件流的仪式回返,而不是直接输出。
$ p! |( h1 t2 a1 t. c0 O) u( K9 R# E' I' E* b0 j$ m
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.
* o4 W0 V$ ~" b. g" q U
! A7 I* i8 L5 [# v 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.
|( t5 c" L1 E8 m# h# n5 D# R0 j8 j/ ~! y s7 q
CURLOPT_UNRESTRICTED_AUTH在使役CURLOPT_FOLLOWLOCATION萌生的header中的多个locations中持续追加用户名和密码信息,纵然域名已发生变更。% ?: i" J( T# k
1 z6 _$ ?6 O& c* X CURLOPT_UPLOAD启用时准许文件传输+ W$ r8 J* W: t; A5 e+ V) E% V
" ^' A! q1 f+ b CURLOPT_VERBOSE启用时会汇报所有的信息,储存在STDERR或指定的CURLOPT_STDERR中$ h) |3 x) C8 u
2 G" E2 J- P* Y6 d* Z# j% A
CURLOPT_BUFFERSIZE每每获取的数据中读入缓存的体积,这个值每每都会被充塞。
& v4 p4 F& P. O. O- M8 W! S+ S5 J6 o( S8 W
以上就是这近2个月的建站分享,给刚刚步入小小草根做个参考!当然这只是我个人的看法、经验,硬邦邦的大草不要扔刀给我哈!扔点泥巴给我最好了!滋润下我们这些小小草啊!O(∩_∩)O哈哈~希望各位站长给些针对性的意见建议,指导下我怎么修改关键词才好!本文由亿万商学院 http://tv.51yiwan.com/ 收集整理欢迎转载请注明,谢谢合作
+ e0 ~7 Z4 `2 R3 c+ _0 k
3 k: E% X# q& G2 e |