nginx防盜鏈和內核參數優化

    防盜鏈:防止別人直接從你網站引用圖片等鏈接,消耗了你的資源和網絡流量。有幾種解決方法:1,水印,品牌宣傳,帶寬,服務器足夠。2,防火牆,直接控制,前提是知道ip來源。3,防盜鏈策略下面的方法直接給與404錯誤提示

    location ~* ^.+\.(jpg | gif | png | swf | flv | wma | wmv | asf | mp3 | mmf | zip | rar)$ {

    if ($invalid_referer) {

    #retrun 302 http://www.tanhong.com/img/nolink.jpg;

    return 404;

    break;

    }

    accesss_log off;

    }

內核參數優化

    fs.file-max=999999:參數表示進程可以同時打開的最大句柄數,直線限制最大併發連接數,根據實際情況配置。

    net.ipv4.tcp_max_tw_buckets=6000:表示操作系統允許TIME_WAIT套接字數量的最大值,如果超過這個數字,TIME_WAIT套接字將立刻被清除並打印警告信息。參數默認爲180000,過多的TIME_WAIT套接字會使web服務器變慢。

    net.ipv4.ip_local_port_range=1024 65000:允許系統打開的端口範圍

    net.ipv4.tcp_tw_recycle=1:啓用timewait快速回收

    net.ipv4.tcp_tw_reuse=1:開啓重用。允許將TIME-WAIT sockets重新用於新的TCP連接。對於服務器來說很有意義,因爲服務器上總會有大量TIME-WAIT狀態的連接。

    net.ipv4.tcp_keepalive_time=30:表示當keepalive啓用時,TCP發送keepalive消息的頻度。默認2個小時。

    net.ipv4.tcp_syncookies=1:開啓SYN Cookies,當出現SYN等待syn等待隊列溢出時,啓用cookies來處理。

    net.core.somaxconn=40960:web應用中listen函數的backlog默認會給我們內核參數的net.core.somaxconn限制128,而nginx定義的NGX_LISTEN_BACKLOG默認爲511。必要需要調整這個值。

    對於一個TCP連接,Server與client需要通過三次握手來建立網絡連接。當三次握手成功後,可以看到端口的狀態有LISTEN轉變爲ESTABLISHED,接着這條鏈路上就可以傳送數據,每一個處於監聽狀態的端口,都有自己的監聽隊列,監聽隊列的長度與如somaxconn參數和使用該端口的程序中listen函數有關。

    somaxconn參數和使用該端口的程序中listen函數有關

    somaxconn參數,定義了系統中每一個端口最大的監聽隊列的長度,這是個全局的參數,默認值爲128,對於一個經常處理新連接的高負載web服務環境128太小。大多數這個值建議增加至1024.大的偵聽隊列對防止拒絕dos***也會有幫助

    net.core.netdev_max_backlog=262144:每個網絡藉口接收數據包的速率比內核處理這些包的速率快時,允許送到隊列的數據包的最大數目。

    net.ipv4.tcp_max_syn_backlog=262144:這個參數標示TCP三次握手建立階段接受SYn請求隊列的最大長度,默認爲1024,將其設置得大一些可以使出現nginx繁忙來不及accept新連接的情況時,linux不至於丟失客戶端發起的連接請求。

    net.ipv4.tcp_rmem=10240 87380 12582912:這個參數定義了TCP接受緩存的最小值,默認值,最大值。

    net.ipv4.tcp_wmem=10240 87380 1252912:這個參數定義了TCP發送緩存

     net.core.rmem_default = 6291456:這個參數表示內核套接字接受緩存區默認的大小。

    net.core.wmem_default = 6291456:這個參數表示內核套接字發送緩存區默認的大小           net.core.rmem_max = 12582912:這個參數表示內核套接字接受緩存區的最大大小。

    net.core.wmem_max = 12582912:這個參數表示內核套接字發送緩存區的最大大小。

                     net.ipv4.tcp_syncookies = 1:該參數與性能無關,用於解決TCPSYN***


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章