<em id="0a85b"><option id="0a85b"></option></em>

<abbr id="0a85b"></abbr>

      <nobr id="0a85b"></nobr>
        <tr id="0a85b"></tr>
        9久久伊人精品综合,亚洲一区精品视频在线,成 人免费va视频,国产一区二区三区黄网,99国产精品永久免费视频,亚洲毛片多多影院,精品久久久无码人妻中文字幕,无码国产欧美一区二区三区不卡
        學習啦 > 學習電腦 > 操作系統 > Linux教程 > Nginx如何設置目錄保護、防盜鏈、限速、多域名

        Nginx如何設置目錄保護、防盜鏈、限速、多域名

        時間: 若木635 分享

        Nginx如何設置目錄保護、防盜鏈、限速、多域名

          Nginx是個非常優秀的HTTP服務器軟件,可以通過設置有實現許多功能,如目錄保護、IP訪問限制、防盜鏈、下載限速及設置多域名等等。

          一、NGINX目錄保護及訪問限制

          Nginx保護目錄的配置如下,目錄密碼保護文件是 /usr/local/nginx/htpasswd

          location ~ /admin {#admin為要保護的目錄名稱,location 的意思就是保護從網頁根目錄算起的admin 目錄auth_basic ”PLEASE LOGIN”; #就是進入資料夾時會顯示的信息auth_basic_user_file /usr/local/nginx/htpasswd; #驗證用戶及密碼文件,我這邊設定是放在 /usr/local/nginx/htpasswd}location ~ .php$ {fastcgi_pass 127.0.0.1:9000;fastcgi_index index.php;fastcgi_param SCRIPT_FILENAME /var/www/bbs$fastcgi_script_name;include fastcgi_params;}

          注意,設置目錄密碼保護時,請注意配置區塊的位置,如果放在location ~ .php$ {}區塊后面,如果打開的是靜態頁面或圖片等非php文件,會提示要輸入密碼,但是,如果打開的是php文件,則設置無效,會直接執行php文件并顯示。因此,一定要注意把要設置目錄密碼保護的區塊放在location ~ .php$ {}區塊之前。

          生成密碼文件:

          htpasswd -b -c /usr/locla/nginx/htpasswd username password;

          二、NGINX防盜鏈

          另外 NGiNX 防盜鏈,防止別人偷圖(視頻、flash、軟件…)當然也是 OK 滴! 一樣也是在 server 的區段加上

          location ~* .(txt|ico|gif|png|bmp|jpg|jpeg|zip|rar|gz|7z|exe|mp3|flv|swf)$ {

          valid_referers none blocked opsers.org www.xuexila.org ;

          if ($invalid_referer) {

          rewrite ^/

          }

          }

          這時候 location 的意思就是保護從網頁根目錄算起,所有的指定類型的文件都依照此規則

          valid_referers none blocked 的意思就是不阻擋從哪些地方來的羅~ 這邊以空格來分隔允許的域名或 ip 位置

          $invalid_referer 的意思就是不允許連結

          rewrite ^/ 的意思就是指定不允許的連結自動轉向到一個頁面,或是已經有設定 404 轉址的也可以先注解掉這行再把 #return 404 的注解拿掉,就會自動跑到你設定的 404 頁面了。

          如何來看防盜鏈是否是生效的,建議大家直接看服務日志,不要拿個網站來測試。因為有些不要臉的家伙(比如百度),他會用自己的圖片服務器來提供服務。就是因為這個原因,上一次我在做這個的時候,浪費了很多時間。

          三、NGINX下載限速

          NGiNX 還能限速再限制下載線程! 先在 http 區段找到 limit_zone,再把注釋拿掉~

          # 設定一個叫做 crawler 的區域,大小為 20MB

          limit_zone crawler $binary_remote_addr 20m;

          然后在 server 的區段加上

          # 限制檔案類型只能單線下載

          location ~ .*.(zip|rar|gz|tar|exe|mp3|flv|swf|jpg|jpeg)${

          limit_conn crawler 1;

          limit_rate 500k; # 再加上限速

          }

          # 限制特定資料夾底下只能單線下載

          # location /download/ {

          # limit_conn crawler 1;

          # limit_rate 500k; # 再加上限速

          # }

          四、NGINX多域名設置

          今天在配置PHP+Nginx時出現一個嚴重的問題,在Nginx虛擬主機上綁定了泛域名,在程序中需要用二級域名指向不同的內容,但無論如何訪問都只跳轉到主域名上!為了找到問題,一個一個試驗,得出如下結論:不管綁定多少域名,用 $_SERVER["SERVER_NAME"] 只會返回虛擬主機中綁定的第一個域名!

          比如綁定域名如下:

          server_name m.bingou.cc *.fxzc.com xuexila.com

          現在我不管用什么域名訪問, $_SERVER["SERVER_NAME"] 都只會返回 m.bingou.cc !!這是個很嚴重的問題,對泛域名造成了致命的影響!

          既然有問題,就肯定有解決方案。。在wiki主翻了N久,終于找到了需要的資料!原來:$_SERVER["SERVER_NAME"] 返回的值是由 Nginx 的 fastcgi_param 中 SERVER_NAME 提供的,而默認的配置為:

          fastcgi_param SERVER_NAME $server_name;

          Nginx中 $server_name 變量就是上面設置的域名,只會返回第一個!

          這下好辦了,把上面的配置改成:

          fastcgi_param SERVER_NAME $host;

          就行了。

          另外還需要在server_name配置后面加一行:

          server_name_in_redirect off;

          意思是 讓 nginx 在處理自己內部重定向時不默認使用 server_name 設置中的第一個域名!

        138693 主站蜘蛛池模板: 成在人线AV无码免观看| 有码中文字幕一区三区| 人人妻人人做人人爽夜欢视频| 亚洲av套图一区二区| 久久精品水蜜桃av综合天堂| 尤物国产在线精品一区| 999精品色在线播放| 白白发布视频一区二区视频| 亚洲精品免费一二三区| 无码人妻一区二区三区兔费| caoporn免费视频公开| 91av国产在线| 东京热一精品无码av| 国产黄色精品一区二区三区| 亚洲国产午夜精品福利| 亚洲一区精品伊人久久| 在线精品国精品国产尤物| 国产精品人成视频免费国产| 99久久亚洲综合精品网| 最新国产精品亚洲| 日日碰狠狠添天天爽超碰97| 理论片一区| 亚洲中文字幕无码专区| 久久国产热这里只有精品| 国产精品中文字幕二区| 极品美女aⅴ在线观看| 人人玩人人添人人澡超碰| 人人做人人妻人人精| 潮喷失禁大喷水av无码| 少妇熟女久久综合网色欲| 国产精品亚洲片夜色在线| 天天综合网网欲色| 亚洲日韩一区二区| 久久综合免费一区二区三区| 国产高清在线男人的天堂| 国产av亚洲精品ai换脸电影| 日韩精品一区二区三区四区视频| 亚洲综合精品一区二区三区| 九色综合国产一区二区三区| 亚洲国产日韩伦中文字幕| 视频二区亚洲精品|