精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

日志分析工具Awstats實戰之Nginx篇:分析結果動態化

運維 系統運維
繼上一篇文章“分析工具Awstats實戰之Nginx篇-分析結果靜態化”后,作者推出了這個系列的第二篇:日志分析工具Awstats實戰之Nginx篇:分析結果動態化,介紹了如何將awstats的日志分析信息用靜態頁面來進行顯示,不過顯示效果肯定沒有動態的好,本篇文章將帶大家一起來部署動態的分析結果查閱。

繼上一篇文章“分析工具Awstats實戰之Nginx篇-分析結果靜態化”后,作者推出了這個系列的第二篇:日志分析工具Awstats實戰之Nginx篇:分析結果動態化,介紹了如何將awstats的日志分析信息用靜態頁面來進行顯示,不過顯示效果肯定沒有動態的好,本篇文章將帶大家一起來部署動態的分析結果查閱。

環境:

  1. CentOS 6.4 
  2. ip:192.168.1.113 
  3. 域名:www.sunsky.com(server和client都通過hosts文件解析) 
  4. nginx-1.2.9 編譯安裝,路徑/usr/local/nginx,服務開啟狀態 
  5. 日志記錄格式為nginx默認的,切勿更改,否則會造成awstats無法分析日志。 
  6. log_format main '$remote_addr - $remote_user [$time_local] "$request" ' 
  7. '$status $body_bytes_sent "$http_referer" ' 
  8. '"$http_user_agent" "$http_x_forwarded_for"'; 
  9. awstats-7.2.tar.gz CPAN-2.00.tar.gz FCGI-0.74.tar.gz FCGI-ProcManager-0.24.tar.gz 
  10. 必須有perl-devel,不然無法編譯FCGI。 

一、日志自動切割

對于nginx的日志切割,由于沒有像apache一樣去用cronolog工具,這里我們就寫一個腳本,讓它可以在每天00:01自動執行,切割昨天的日志(交由awstats分析),壓縮前天的日志(壓縮日志可減小存儲空間,為防止awstats沒有分析完就被壓縮,所以只壓縮前天的日志)。

  1. vim /server/scripts/cut_nginx_log.sh 

輸入以下內容:

  1. #!/bin/sh 
  2. yesterday=`date -d "yesterday" +"%Y%m%d"` 
  3. before_yesterday=`date -d "-2 day" +"%Y%m%d"` 
  4. Nginx_Dir="/usr/local/nginx" 
  5. Nginx_logs="/app/logs" 
  6. Log_Name="www_access" 
  7. cd /tmp 
  8. [ -d $Nginx_Logs ] && cd $Nginx_logs || exit 1 
  9. [ -f $Log_Name.log ] && /bin/mv $Log_Name.log ${Log_Name}_${yesterday}.log || exit 1 
  10. if [ $? -eq 0 -a -f $Nginx_Dir/logs/nginx.pid ] 
  11. then 
  12. kill -USR1 `cat $Nginx_Dir/logs/nginx.pid` 
  13. fi 
  14. [ -f  ${Log_Name}_${before_yesterday}.log ] && /usr/bin/gzip ${Log_Name}_${before_yesterday}.log|| exit 1 

執行crontab -e將該腳本加入定時任務中

  1. 1 0 * * * /bin/sh /server/scripts/cut_nginx_log.sh >/dev/null 2>&1 

這樣每天凌晨00:01就能自動實現日志的切割,壓縮等功能了。

因為本次實驗下的nginx此時已經有日志了,另外為了后文awstats能對切割過的日志進行分析,所以這里我們要運行一下此腳本,來將現有日志進行切割生成昨天的日志方便后文操作。

  1. /bin/sh /server/scripts/cut_nginx_log.sh >/dev/null 2>&1 

#p#

二、配置FCGI

1、安裝CPAN

  1. wget http://search.cpan.org/CPAN/authors/id/A/AN/ANDK/CPAN-2.00.tar.gz 
  2. tar zxf CPAN-2.00.tar.gz 
  3. cd CPAN-2.00 
  4. perl Makefile.PL 
  5. make && make install 

2、安裝FCGI和FCGI::ProcManager

  1. wget http://search.cpan.org/CPAN/authors/id/F/FL/FLORA/FCGI-0.74.tar.gz 
  2. tar zxf FCGI-0.74.tar.gz 
  3. cd FCGI-0.74 
  4. 第一種安裝方法:perl -MCPAN -e 'install FCGI' 
  5. 第二種安裝方法:perl Makefile.PL 
  6.               make&&make install 
  7. wget http://search.cpan.org/CPAN/authors/id/B/BO/BOBTFISH/FCGI-ProcManager-0.24.tar.gz 
  8. tar zxf FCGI-ProcManager-0.24.tar.gz 
  9. cd FCGI-ProcManager-0.24 
  10. 第一種安裝方法:perl -MCPAN -e 'install FCGI::ProcManager' 
  11. 第二種安裝方法:perl Makefile.PL 
  12.               make&&make install 

在執行第一種安裝方法的時候,一定是全程自動滾動下來提示OK的。如果出現提示你輸入yes之類的,你需要按提示操作完之后,再運行第二次直到全程自動滾動下來提示OK才為完成安裝。或者你就用第二種方法來執行安裝。

3、創建FCGI啟動文件

  1. vi /usr/local/nginx/sbin/fcgi       #此處按個人習慣命名 
  2. #!/usr/bin/perl 
  3. use FCGI; 
  4. #perl -MCPAN -e 'install FCGI' 
  5. use Socket; 
  6. use POSIX qw(setsid); 
  7. #use Fcntl; 
  8. require 'syscall.ph'; 
  9. &daemonize; 
  10. #this keeps the program alive or something after exec'ing perl scripts 
  11. END() { } BEGIN() { } 
  12. *CORE::GLOBAL::exit = sub { die "fakeexit\nrc=".shift()."\n"; }; 
  13. eval q{exit}; 
  14. if ($@) { 
  15.         exit unless $@ =~ /^fakeexit/; 
  16. }; 
  17. &main; 
  18. sub daemonize() { 
  19.     chdir '/'                 or die "Can't chdir to /: $!"; 
  20.     defined(my $pid = fork)   or die "Can't fork: $!"; 
  21.     exit if $pid; 
  22.     setsid                    or die "Can't start a new session: $!"; 
  23.     umask 0; 
  24. sub main { 
  25. #$socket = FCGI::OpenSocket( "127.0.0.1:8999", 10 ); 
  26. $socket = FCGI::OpenSocket( "/usr/local/nginx/fastcgi_temp/perl_cgi-dispatch.sock", 10 ); 
  27. #use UNIX sockets - user running this script must have w access to the 'nginx' folder!! 
  28. $request = FCGI::Request( \*STDIN, \*STDOUT, \*STDERR, \%req_params, $socket ); 
  29. if ($request) { request_loop()}; 
  30. FCGI::CloseSocket( $socket ); 
  31. sub request_loop { 
  32. while( $request->Accept() >= 0 ) {                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      
  33. #processing any STDIN input from WebServer (for CGI-POST actions) 
  34. $stdin_passthrough =''
  35. $req_len = 0 + $req_params{'CONTENT_LENGTH'}; 
  36. if (($req_params{'REQUEST_METHOD'} eq 'POST') && ($req_len != 0) ){ 
  37. my $bytes_read = 0
  38. while ($bytes_read < $req_len) { 
  39. my $data = ''
  40. my $bytes = read(STDIN, $data, ($req_len - $bytes_read)); 
  41. last if ($bytes == 0 || !defined($bytes)); 
  42. $stdin_passthrough .= $data; 
  43. $bytes_read += $bytes; 
  44.  } 
  45. #running the cgi app 
  46. if ( (-x $req_params{SCRIPT_FILENAME}) && #can I execute this? 
  47. (-s $req_params{SCRIPT_FILENAME}) && #Is this file empty? 
  48. (-r $req_params{SCRIPT_FILENAME})     #can I read this file? 
  49. ){ 
  50. pipe(CHILD_RD, PARENT_WR); 
  51. my $pid = open(KID_TO_READ, "-|"); 
  52. unless(defined($pid)) { 
  53. print("Content-type: text/plain\r\n\r\n"); 
  54. print "Error: CGI app returned no output - Executing $req_params 
  55. {SCRIPT_FILENAME} failed !\n"; 
  56. next; 
  57. if ($pid > 0) { 
  58. close(CHILD_RD); 
  59. print PARENT_WR $stdin_passthrough; 
  60. close(PARENT_WR); 
  61. while(my $s = <KID_TO_READ>) { print $s; } 
  62. close KID_TO_READ; 
  63. waitpid($pid, 0); 
  64. } else { 
  65. foreach $key ( keys %req_params){ 
  66. $ENV{$key} = $req_params{$key}; 
  67. # cd to the script's local directory 
  68. if ($req_params{SCRIPT_FILENAME} =~ /^(.*)\/[^\/]+$/) { 
  69. chdir $1; 
  70. close(PARENT_WR); 
  71. close(STDIN); 
  72. #fcntl(CHILD_RD, F_DUPFD, 0); 
  73. syscall(&SYS_dup2, fileno(CHILD_RD), 0); 
  74. #open(STDIN, "<&CHILD_RD"); 
  75. exec($req_params{SCRIPT_FILENAME}); 
  76. die("exec failed"); 
  77.           } 
  78.        } 
  79. else { 
  80. print("Content-type: text/plain\r\n\r\n"); 
  81. print "Error: No such CGI app - $req_params{SCRIPT_FILENAME} may not exist or is 
  82. not executable by this process.\n"; 
  83.        } 
  84.    } 

創建完成后,需要賦予fcgi執行權限:

  1. chmod 755 /usr/local/nginx/sbin/fcgi 

啟動FPM(FastCGI 進程管理器)

  1. perl /usr/local/nginx/sbin/fcgi >/dev/null 2>$1 

在這里,Nginx需要對fcgi生成的/usr/local/nginx/fastcgi_temp/perl_cgi-dispatch.sock有讀寫權限,否則會報502錯誤。

#p#

三、Awstats的安裝與配置

1、部署awstats

首先我們要下載awstats軟件包,并將其放在常規目錄(/usr/local)下:

  1. wget http://awstats.sourceforge.net/files/awstats-7.2.tar.gz 
  2. tar zxf awstats-7.2.tar.gz 
  3. mv awstats-7.2 /usr/local/awstats 

由于wget下載下來的包中權限是非root的,所以這里要修改權限,否則稍后*.pl將無法運行:

  1. chown -R root.root /usr/local/awstats 
  2. chmod +x /usr/local/awstats/tools/*.pl 
  3. chmod +x /usr/local/awstats/wwwroot/cgi-bin/*.pl 

接下來我們要執行awstats/tools下的awstats_configure.pl配置向導,用來生成awstats的配置文件,awstats配置文件的命名規則是awstats.website.conf

  1. cd /usr/local/awstats/tools/ 
  2. ./awstats_configure.pl 

此時會出現如下提示:

  1. ----- AWStats awstats_configure 1.0 (build 1.9) (c) Laurent Destailleur ----- 
  2. This tool will help you to configure AWStats to analyze statistics for 
  3. one web server. You can try to use it to let it do all that is possible 
  4. in AWStats setup, however following the step by step manual setup 
  5. documentation (docs/index.html) is often a better idea. Above all if: 
  6. - You are not an administrator user, 
  7. - You want to analyze downloaded log files without web server, 
  8. - You want to analyze mail or ftp log files instead of web log files, 
  9. - You need to analyze load balanced servers log files, 
  10. - You want to 'understand' all possible ways to use AWStats... 
  11. Read the AWStats documentation (docs/index.html). 
  12. -----> Running OS detected: Linux, BSD or Unix 
  13. -----> Check for web server install 
  14. Enter full config file path of your Web server. 
  15. Example: /etc/httpd/httpd.conf 
  16. Example: /usr/local/apache2/conf/httpd.conf 
  17. Example: c:\Program files\apache group\apache\conf\httpd.conf 
  18. Config file path ('none' to skip web server setup): 
  19. > none      #這里讓填寫網頁服務器的配置文件路徑,因為我們用的不是apache,所以這里要填none 
  20. Your web server config file(s) could not be found. 
  21. You will need to setup your web server manually to declare AWStats 
  22. script as a CGI, if you want to build reports dynamically. 
  23. See AWStats setup documentation (file docs/index.html) 
  24. -----> Update model config file '/usr/local/awstats/wwwroot/cgi-bin/awstats.model.conf' 
  25.   File awstats.model.conf updated. 
  26. -----> Need to create a new config file ? 
  27. Do you want me to build a new AWStats config/profile 
  28. file (required if first install) [y/N] ? y         #詢問是否創建一個新的配置文件,這里填y 
  29. -----> Define config file name to create 
  30. What is the name of your web site or profile analysis ? 
  31. Example: www.mysite.com 
  32. Example: demo 
  33. Your web site, virtual server or profile name: 
  34. > www.sunsky.com      #這里讓填寫你的網站域名,虛擬主機名或者隨便一個配置名 
  35. -----> Define config file path 
  36. In which directory do you plan to store your config file(s) ? 
  37. Default: /etc/awstats 
  38. Directory path to store config file(s) (Enter for default): 
  39. >              #這里要填寫你配置文件存放路徑,我們使用它默認的路徑/etc/awstats,所以直接回車即可 
  40. -----> Create config file '/etc/awstats/awstats.www.sunsky.com.conf' 
  41.  Config file /etc/awstats/awstats.www.sunsky.com.conf created. 
  42. -----> Add update process inside a scheduler 
  43. Sorry, configure.pl does not support automatic add to cron yet. 
  44. You can do it manually by adding the following command to your cron: 
  45. /usr/local/awstats/wwwroot/cgi-bin/awstats.pl -update -config=www.sunsky.com 
  46. Or if you have several config files and prefer having only one command: 
  47. /usr/local/awstats/tools/awstats_updateall.pl now 
  48. Press ENTER to continue...   #提示不能自動加入crontab定時任務,需要稍后自己添加,我們按回車繼續即可 
  49. A SIMPLE config file has been created: /etc/awstats/awstats.www.sunsky.com.conf 
  50. You should have a look inside to check and change manually main parameters. 
  51. You can then manually update your statistics for 'www.sunsky.com' with command: 
  52. > perl awstats.pl -update -config=www.sunsky.com 
  53. You can also build static report pages for 'www.sunsky.com' with command: 
  54. > perl awstats.pl -output=pagetype -config=www.sunsky.com 
  55. Press ENTER to finish... #提示配置文件創建完成和如何更新配置及建立靜態報告頁,這里我們回車即可結束這個配置向導 

2、修改awstats配置文件

完成配置文件的創建之后,我們還需要對/etc/awstats/awstats.www.sunsky.com.conf里的一些參數進行修改。

  1. sed -i 's#LogFile="/var/log/httpd/mylog.log"#LogFile="/app/logs/www_access_%YYYY-24%MM-24%DD-24.log"#g' /etc/awstats/awstats.www.sunsky.com.conf 

這里更改的目的是指定awstats需要分析的nginx的日志文件路徑。這里的路徑大家要按自己的日志路徑來填。

  1. sed -i 's#DirData="/var/lib/awstats"#DirData="/usr/local/awstats/data"#g'/etc/awstats/awstats.www.sunsky.com.conf 

這里更改的目的是指定awstats的數據庫配置文件(即awstats的數據庫(純文本))。

由于,此處沒有/usr/local/awstats/data目錄,所以我們要創建出來:

  1. mkdir /usr/local/awstats/data 

以上的兩個替換操作進行完之后一定要用命令查看替換是否成功,以便及早發現紕漏。

  1. grep "LogFile=" /etc/awstats/awstats.www.sunsky.com.conf 
  2. grep "DirData=" /etc/awstats/awstats.www.sunsky.com.conf 

查詢替換結果正確之后,即可進行下面的步驟。

3、生成awstats統計信息數據庫

現在我們需要用awstats來生成對日志的統計分析信息出來了。由于我們用的是支持perl的FCGI動態化訪問頁面,所以此處我們只需要直接更新數據庫即可。FCGI程序會自動將數據庫以動態頁面的形式展現出來,無須再手動生成靜態頁面了。本處我們用腳本來完成。

  1. vim /server/scripts/awstats_up.sh 
  2. #!/bin/sh 
  3. /usr/local/awstats/wwwroot/cgi-bin/awstats.pl -update -config=www.sunsky.com >/dev/null 2>&1 

該腳本里面用下面的命令也是可以的。

  1. /usr/local/awstats/tools/awstats_updateall.pl now 

運行該腳本生成分析結果

  1. /bin/sh /server/scripts/awstats_up.sh 

#p#

四、配置日志分析頁面的來訪ip的地址位置顯示

這里我們用國內最準確的ip數據庫——QQ純真庫我在博客附件里面放了這個工具,大家下載之后通過CRT用lrzsz工具傳上去,具體步驟這里不寫了。

附件里面有三個文件qqhostinfo.pm,qqwry.pl和QQWry.Dat,我們將這三個文件統統都放到/usr/local/awstats/wwwroot/cgi-bin/plugins中。

接下來,我們修改qqwry.pl文件,將./QQWry.Dat修改為${DIR}/plugins/QQWry

  1. vim /usr/local/awstats/wwwroot/cgi-bin/plugins/qqwry.pl 
  2. #my $ipfile="./QQWry.Dat"

修改為:

  1. my $ipfile="${DIR}/plugins/QQWry.Dat "

然后編輯awstats的配置文件/etc/awstats/awstats.www.sunsky.com.conf(根據你前面配置的站點信息生成的文件),將LoadPlugin="hostinfo"替換為LoadPlugin="qqhostinfo"即可。

  1. sed -i 's#\#LoadPlugin="hostinfo"#LoadPlugin="qqhostinfo"#g'/etc/awstats/awstats.www.sunsky.com.conf 

切記,在這些替換完之后一定要查看替換是否成功,以便及早發生紕漏。

  1. grep "LoadPlugin=\"qqhostinfo\"" /etc/awstats/awstats.www.sunsky.com.conf 

如果檢查無誤,那么我們的ip地址位置顯示就配置好了,在后面的日志分析中,我們就可以清楚的看到來訪ip的地理位置信息了。

五、配置nginx

接下來我們要配置nginx使其能安全的訪問到分析的數據

  1. vim /usr/local/nginx/conf/nginx.conf 

在server{}內添加如下內容:

  1. server { 
  2.            listen 80; 
  3.            server_name www.sunsky.com; 
  4.             location / { 
  5.             root   /www/sunsky; 
  6.             index  index.html index.htm; 
  7.             access_log  /app/logs/www_access.log  main; 
  8.     } 
  9.             location ~* ^/cgi-bin/.*\.pl$ { 
  10.             root /usr/local/awstats/wwwroot; 
  11.                fastcgi_pass unix:/usr/local/nginx/fastcgi_temp/perl_cgi-dispatch.sock; 
  12.                fastcgi_index index.pl; 
  13.                include  fastcgi_params; 
  14.                charset gb2312; 
  15.                auth_basic "Restricted";       #有些網站不愿意公開網站流量信息,所以加個認證 
  16.                auth_basic_user_file /usr/local/nginx/htpasswd.pass;  #該文件由apache的加密認證工具htpasswd創建 
  17.            } 
  18.       location ~ ^/icon/ { 
  19.          root   /usr/local/awstats/wwwroot/; 
  20.          index index.html; 
  21.          access_log off; 
  22.          error_log off; 
  23.          charset gb2312; 
  24.       } 

為了保持nginx.conf主配置文件更加整潔干凈,所以我們將fastcgi_param的一系列參數添加到/usr/local/nginx/conf/fastcgi_params文件的最頂部,然后在nginx.conf里面調用這個文件即可。

  1. vi /usr/local/nginx/conf/fastcgi_params 
  2. fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; 
  3. fastcgi_param QUERY_STRING     $query_string; 
  4. fastcgi_param REQUEST_METHOD   $request_method; 
  5. fastcgi_param CONTENT_TYPE     $content_type; 
  6. fastcgi_param CONTENT_LENGTH   $content_length; 
  7. fastcgi_param GATEWAY_INTERFACE CGI/1.1; 
  8. fastcgi_param SERVER_SOFTWARE    nginx; 
  9. fastcgi_param SCRIPT_NAME        $fastcgi_script_name; 
  10. fastcgi_param REQUEST_URI        $request_uri; 
  11. fastcgi_param DOCUMENT_URI       $document_uri; 
  12. fastcgi_param DOCUMENT_ROOT      $document_root; 
  13. fastcgi_param SERVER_PROTOCOL    $server_protocol; 
  14. fastcgi_param REMOTE_ADDR        $remote_addr; 
  15. fastcgi_param REMOTE_PORT        $remote_port; 
  16. fastcgi_param SERVER_ADDR        $server_addr; 
  17. fastcgi_param SERVER_PORT        $server_port; 
  18. fastcgi_param SERVER_NAME        $server_name; 
  19. fastcgi_read_timeout 60; 

針對上面的加密,由于nginx沒有好的加密認證工具,需要借助apache的htpasswd來實現加密認證功能:

  1. htpasswd -c -m /usr/local/nginx/htpasswd.pass sunskyadmin      #用戶名為sunskyadmin 

配置完畢之后,檢查nginx語法,然后優雅重啟之后,用游覽器訪問http://www.sunsky.com/cgi-bin/awstats.pl?config=www.sunsky.com,輸入賬號密碼之后即可查看統計信息了。

至此,awstats已經可以實現對Nginx的日志統計,動態化安全訪問及來訪ip的地址位置顯示等功能了。

五、配置awstats自動運行

為了讓整個日志的統計過程可以實現自動化,將awstats.sh腳本加入crontab定時任務中去,此時結合上面的定時切割任務,我們的crontab里面會有多出來兩條定時任務。

  1. 1 0 * * * /bin/sh /server/scripts/cut_nginx_log.sh >/dev/null 2>&1 
  2. 0 1 * * * /bin/sh /server/scripts/awstats_up.sh >/dev/null 2>&1 

到此,我們整個日志訪問工具awstats在nginx上對日志分析之后的靜態化和動態化訪問都已經實現了。后面的話,我會再寫一篇awstats對apache服務器的日志分析部署文檔。大家如果有什么問題的話,可以聯系我進行交流探討,咱們共同學習,共同進步!

本文作者:sunsky,博客地址:http://sunsky.blog.51cto.com/

責任編輯:黃丹 來源: 博客
相關推薦

2013-10-31 11:08:15

2013-11-01 10:43:35

日志分析Awstats實戰Apache

2015-07-31 10:57:01

安全日志windows安全日志安全日志分析

2017-09-14 10:45:47

PostgreSQL日志分析pgBadger

2023-10-24 07:22:22

Nginx運維管理

2012-09-20 10:07:29

Nginx源碼分析Web服務器

2019-03-20 13:44:30

Web 開發代碼

2014-02-12 10:28:50

Hadoop

2009-06-10 18:12:38

Equinox動態化OSGi動態化

2021-04-27 08:57:58

開發技能代碼

2024-08-06 09:40:21

2023-10-30 09:01:08

Nginx日志分析

2024-03-19 08:02:28

集群GaussDB指標

2022-03-25 00:00:00

Splunk搜索SPL

2022-03-21 15:02:05

Harmonyhiperf鴻蒙

2022-06-29 09:19:09

靜態代碼C語言c代碼

2023-07-07 06:53:56

遠程軟件日志向日葵

2018-01-16 10:11:11

Nginx訪問日志

2021-01-25 20:20:35

數據分析SparkHadoop

2013-09-11 09:36:02

VMwareLog Insight
點贊
收藏

51CTO技術棧公眾號

成人污污www网站免费丝瓜| 亚洲大尺度在线观看| 欧美性生活一级片| av日韩亚洲| 美日韩一级片在线观看| 欧美成人全部免费| 久久国产精品无码一级毛片 | 免费成人网www| 91精品黄色片免费大全| 97国产精东麻豆人妻电影| 欧美私人网站| 99riav久久精品riav| 国产精品专区一| 天堂网一区二区三区| 色喇叭免费久久综合| 亚洲韩国欧洲国产日产av| 色乱码一区二区三区在线| 欧美韩日亚洲| 欧美韩国日本综合| 久99久视频| a天堂中文在线观看| 免费一级欧美片在线播放| 久久久国产影院| 欧美图片一区二区| jizz性欧美23| 日韩一区二区免费在线观看| 欧美一级特黄a| 国产在线88av| 亚洲一区视频在线观看视频| 在线视频不卡国产| 国产福利小视频在线| 91丨porny丨国产| 国产66精品久久久久999小说| 一级黄色免费看| 视频一区二区中文字幕| 57pao成人永久免费视频| 欧美日韩大片在线观看| 91av精品| 在线观看日韩www视频免费| 国产在线观看无码免费视频| 国产毛片久久久| 精品久久久三级丝袜| 四虎成人在线播放| 国产一精品一av一免费爽爽| 欧美日韩成人高清| 亚洲18在线看污www麻豆| 无人区在线高清完整免费版 一区二 | 精品日本一线二线三线不卡| 免费高清视频在线观看| 精品国产一区二| 日韩一区二区高清| 一级日本黄色片| 日韩精品一级| 欧美成人一区二区三区在线观看 | 欧美片一区二区三区| 日韩一区二区三区四区在线| 你懂的视频一区二区| 美女福利精品视频| 豆国产97在线 | 亚洲| 亚洲五月婷婷| 午夜精品久久久久久久99热浪潮 | 欧美日韩精品综合在线| jizzzz日本| 亚洲精品无播放器在线播放| 欧美一区二视频| 91视频免费入口| 99国产精品免费网站| 欧美精品一区二区三区蜜桃视频| 亚洲色图14p| 国产一区二区三区四区二区| 这里只有精品久久| 全网免费在线播放视频入口 | 欧美日韩爱爱| 日韩中文字幕在线观看| 校园春色 亚洲| 亚洲av无码国产精品永久一区 | 日本不卡免费播放| 国产亚洲短视频| 一区二区三区视频| 日本资源在线| 色综合中文字幕国产| 久久黄色片网站| 国产精品45p| 伊人久久综合97精品| 神马午夜精品91| 亚洲性视频h| 热久久这里只有精品| 丰满熟女人妻一区二区三| 国产在线精品一区二区| 国产精品一区二区不卡视频| 精品视频二区| 亚洲三级免费电影| 日韩精品 欧美| 国产黄色精品| 精品成人佐山爱一区二区| 久久久无码人妻精品一区| 日韩在线观看电影完整版高清免费悬疑悬疑| 久久视频在线看| 成人毛片在线播放| 国产一区二区电影| 日本免费一区二区三区| 欧美一卡二卡| 欧美喷水一区二区| 青青草视频成人| 欧美精品首页| 国产精品女主播| 欧美一级在线免费观看| 国产精品高潮久久久久无| 婷婷无套内射影院| 91成人app| 亚洲人成电影网站色…| 免费毛片在线播放免费| 日韩二区在线观看| 国产伦精品一区二区三区在线 | 国产美女18xxxx免费视频| 玖玖玖免费嫩草在线影院一区| 色综合亚洲精品激情狠狠| 圆产精品久久久久久久久久久| 国产综合久久久久久鬼色| 欧美精品v日韩精品v国产精品| 精精国产xxxx视频在线中文版 | 天堂在线视频免费| 亚洲欧洲综合另类| 亚洲一区二区免费视频软件合集 | 香蕉视频免费版| 在线观看涩涩| 精品国产在天天线2019| 极品久久久久久| 捆绑紧缚一区二区三区视频| 精品免费视频123区| 亚洲图区一区| 欧美色欧美亚洲另类二区| 黄色片视频免费观看| 综合久久十次| 国产一区二区丝袜| av女优在线| 色悠悠久久综合| 欧美狂猛xxxxx乱大交3| 99成人精品| 国产日韩欧美综合精品| 18av在线播放| 欧美一区二区三区视频在线| 三上悠亚作品在线观看| 韩国精品一区二区| 中国一级大黄大黄大色毛片| 成人午夜888| 韩国三级在线一区| 尤物99国产成人精品视频| 国产精品极品在线观看| 国产精品中文有码| 美女又黄又免费的视频| 青青草精品在线| 日韩欧美伦理| 色婷婷av一区二区三区久久| 欧美一级特黄aaa| 成人精品视频| 国产精品白丝jk喷水视频一区| 色中色在线视频| 精品久久久久久久久久久久久| www.四虎在线| 亚洲久久成人| 久久久亚洲综合网站| 136福利精品导航| 久久天天躁狠狠躁老女人| 一本色道久久综合熟妇| 中文字幕在线不卡| 在线a人片免费观看视频| 国产亚洲一区二区三区不卡| 青青久久aⅴ北条麻妃| 理论不卡电影大全神| 午夜久久电影网| 国产伦精品一区二区三区精品| 国产精品国码视频| 国内精品二区| 欧美亚洲韩国| 日韩视频欧美视频| 亚洲国产精品久久久久爰性色 | 91麻豆国产自产在线观看亚洲| 国产精品久久久久久久久久新婚 | 日韩精品视频一二三| 亚洲成av人片一区二区密柚| 国产麻豆一区二区三区在线观看| 亚洲av综合色区无码一区爱av| 久久激情综合| 欧美日韩综合精品| 免费污视频在线一区| 久久综合一区二区| 国产av麻豆mag剧集| 九九视频精品全部免费播放| 国产男人精品视频| 后进极品白嫩翘臀在线播放| 亚洲欧美精品一区| 国产乱码一区二区| 懂色av中文一区二区三区天美| 成人性视频免费看| 99国产精品久久| 日本中文字幕影院| 亚洲精选在线| 国产盗摄视频在线观看| 精品在线观看入口| 99理论电影网| 四虎国产精品免费久久5151| 911国产网站尤物在线观看| 国产视频精品久久久| 国产区精品在线| 在线看不卡av| 亚洲精品午夜国产va久久成人| 国产精品免费无遮挡无码永久视频| 一区二区三区日韩欧美精品| 五月天精品在线| 99久久99精品久久久久久| 久久精品国产99久久99久久久| 午夜一区二区三区不卡视频| 嫩草影院中文字幕| 99久久99久久精品国产片桃花| 久久精品欧美| youjizzjizz亚洲| 92福利视频午夜1000合集在线观看| 久久久一本精品| 9.1国产丝袜在线观看| 黄网站在线观| 久久91精品国产| 欧美激情免费| 日韩在线观看视频免费| 久久久久久久影视| 日韩精品中文字幕在线播放| 人人妻人人澡人人爽人人欧美一区| 欧美电影一区二区三区| 超碰在线观看91| 色域天天综合网| 无码人妻精品一区二区三区不卡 | 欧美激情三区| 国产精品成人av在线| 国产免费不卡| 欧美在线视频免费播放| 激情视频网站在线播放色| 久久久久成人网| 国内小视频在线看| 色与欲影视天天看综合网| 综合久久2019| 久久久久久久久久久免费精品| 牛牛精品视频在线| 欧美大片免费看| 久久电影网站| 97成人在线视频| 亚洲欧美一区二区三区| 日韩av快播网址| av亚洲一区二区三区| 国产精品igao视频| 久久夜夜久久| 成人免费黄色网| 国产一区二区| 99久热re在线精品996热视频 | 午夜精品一区二区三区四区| 国产一区二区观看| 亚洲一区尤物| 在线看片不卡| av免费观看国产| 鲁大师成人一区二区三区| 日韩亚洲在线视频| 麻豆91精品91久久久的内涵| 欧美一级视频在线| 国产精品一区三区| 懂色av粉嫩av蜜乳av| 久久精品夜色噜噜亚洲aⅴ| 99在线视频免费| 亚洲欧美二区三区| 日本三级欧美三级| 色哟哟亚洲精品| 97久久人国产精品婷婷| 精品久久人人做人人爱| 五月天激情开心网| 中文字幕精品在线| 天堂亚洲精品| 日本久久久久久久| 亚洲在线资源| 国内精品一区二区| 精品日本12videosex| 操bbb操bbb| 免费精品视频| 九九九久久久久久久| 99re在线视频这里只有精品| 国产视频三区四区| 一区二区三区精品在线| 少妇久久久久久久| 欧美xxx久久| caoporn国产精品免费视频| 欧美国产第一页| 91亚洲视频| 精品国产一二| 国产精品久久久久9999赢消| 美女日批免费视频| 激情六月婷婷综合| 日本高清www| 亚洲一二三区在线观看| 在线观看毛片视频| 精品一区二区亚洲| 日韩另类在线| 91精品国产综合久久香蕉的用户体验| 一本一道久久a久久| 亚洲日本精品| 亚洲欧美日韩精品一区二区 | xvideos.蜜桃一区二区| 一个色的综合| 噜噜爱69成人精品| 丰满岳乱妇一区二区| 中文字幕日本不卡| 无码人妻精品一区二区蜜桃色欲| 欧美tk丨vk视频| 免费观看久久久久| 国产成人精品一区二区| 国产精品调教| 菠萝蜜视频在线观看入口| 蜜臀av一区二区在线免费观看 | 一区二区在线观看av| 亚洲视频在线观看一区二区| 亚洲男人天堂2024| 91av久久| 国产精品美女xx| 午夜精品亚洲| 国产精品999.| 亚洲丝袜精品丝袜在线| 中文字幕视频一区二区| 亚洲天堂av图片| 欧美性xxx| 欧美极品日韩| 免费在线亚洲| 青青草视频成人| 狠狠色噜噜狠狠狠狠97| 午夜福利视频一区二区| 欧美精品videosex性欧美| 日韩欧美一级| 成人小视频在线观看免费| 国产一区二区日韩精品| 99久久99久久精品国产| 91精品国产色综合久久不卡电影| www.亚洲视频| 国产精品手机播放| 日韩精品四区| 性欧美在线视频| 亚洲人成电影网站色mp4| 国产免费av电影| 欧美另类精品xxxx孕妇| 成人av婷婷| 久草热视频在线观看| av亚洲精华国产精华| 久久久午夜影院| 亚洲美女激情视频| 精品日韩视频| 一区二区三区精品国产| 经典三级在线一区| 欧美成人免费看| 亚洲国产成人精品女人久久久 | 国产一二三四五区| 在线中文字幕不卡| 毛片网站在线免费观看| 亚洲一区二区三区xxx视频| 亚洲无线视频| 91精品人妻一区二区三区蜜桃欧美 | 亚洲欧洲成视频免费观看| 视频一区在线免费看| 亚洲欧美日产图| 国产精品一二三四五| 国产精品111| 亚洲人成在线一二| 国产精品亚洲成在人线| www.18av.com| 久久综合狠狠综合| 精品无人区一区二区三区| 亚洲天天综合| 一级欧美一级日韩片| 日本韩国视频一区二区| 久cao在线| 国产视频一区二区不卡| 久久尤物视频| 国产精品免费人成网站酒店| 亚洲精品在线免费观看视频| 国产综合色在线观看| 亚洲av首页在线| 26uuu精品一区二区三区四区在线| 中文字幕乱码中文字幕| 欧美二区在线播放| 欧美美女在线| 久久久国产精品久久久| 色先锋资源久久综合| 污片视频在线免费观看| 欧美日本韩国一区二区三区| 国产综合色产在线精品| 99超碰在线观看| 精品中文字幕在线| 精品国产网站| 亚洲少妇一区二区三区| 欧美亚洲丝袜传媒另类| 精品精品导航| 少妇高潮流白浆| 久久久久久久久99精品| 精品黑人一区二区三区在线观看 | 午夜一区二区三区四区| 欧美乱妇40p| 日韩欧美三级|