Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 影音先锋中文资源,暖暖在线日本免费高清,91麻豆最新在线人成免费观看

          整合營銷服務商

          電腦端+手機端+微信端=數據同步管理

          免費咨詢熱線:

          收到不明郵件需警惕,安全公司警告黑客架設假OneDr

          收到不明郵件需警惕,安全公司警告黑客架設假OneDrive網站釣魚

          T之家 8 月 4 日消息,安全公司 Trellix 發布報告指出近來有黑客架設山寨 OneDrive 網站,以“連不上服務”為幌子誘導用戶運行 PowerShell 釣魚命令,從而讓受害者“自己給自己電腦裝上木馬”。

          據悉,黑客首先架設山寨 OneDrive 網站,之后向用戶批量發送帶有 HTML 附件的釣魚郵件,該附件聲稱用戶收到一項名為“Reports.pdf”的文件共享請求,當用戶點擊郵件附帶的鏈接進入“OneDrive 網站”后,相關網站就會聲稱用戶遇到錯誤代碼 Error 0x8004de86,要求用戶“手動更新 DNS 緩存”來解決問題,之后便會提供一系列 PowerShell 命令誘導用戶自己給自己裝上木馬。

          IT之家獲悉,在用戶在終端輸入命令后,系統便會自動下載 AutoIT 惡意腳本,在腳本部署完畢后,電腦便會顯示“操作成功”并要求用戶“重新加載網頁”,安全公司提到這樣看似“正常”的操作反倒令受害者難以察覺情況有異。

          為了防止此類攻擊,安全公司警告用戶應提高警惕,不要輕易查看來路不明的電子郵件,更不應當點擊這些電子郵件中的附件 / 網頁鏈接,從而減少遭到黑客入侵的風險。



          路:


          1.創建一個表單來填寫用戶信息(姓名,email,收件人,評論)

          2.在views.py文件中創建一個視圖(view)來操作發布的數據和發送email

          3.在blog應用的urls.py中為新的視圖(view)添加一個URL模式

          4.創建一個模板(template)來展示這個表單


          1.使用Django 創建表單

          Django有一個內置的表單框架允許你通過簡單的方式來創建表單。這個表單框架允許你定義你的表單字段,指定這些字段必須展示的方式,以及指定這些字段如何驗證輸入的數據。Django表單框架還提供了一種靈活的方式來渲染表單以及操作數據。

          • Form創建一個標準表單
          • ModelForm創建一個可用于創建或者更新model實例的表單

          在blog應用中創建forms.py


          表單可以存在你的Django項目的任何地方,但按照慣例將它們放在每一個應用下面的forms.py文件中


          name字段是一個CharField。這種類型的字段被渲染成<input type="text">HTML元素。每種字段類型都有默認的控件來確定它在HTML中的展示形式。通過改變控件的屬性可以重寫默認的控件。在comment字段中,我們使用<textarea></textarea>HTML元素而不是使用默認的<input>元素來顯示它。


          字段驗證取決于字段類型。例如,email和to字段是EmailField,這兩個字段都需要一個有效的email地址,否則字段驗證將會拋出一個forms.ValidationError異常導致表單驗證不通過。在表單驗證的時候其他的參數也會被考慮進來:我們將name字段定義為一個最大長度為25的字符串;通過設置required=False讓comments的字段可選。所有這些也會被考慮到字段驗證中去。


          2.在視圖中操作表單

          當表單成功提交后你必須創建一個新的視圖(views)來操作表單和發送email。編輯blog應用下的views.py文件,添加以下代碼:



          該視圖(view)完成了以下工作:

          · 我們定義了post_share視圖,參數為request對象和post_id。

          · 我們使用get_object_or_404快捷方法通過ID獲取對應的帖子,并且確保獲取的帖子有一個published狀態。

          · 我們使用同一個視圖(view)來展示初始表單和處理提交后的數據。我們會區別被提交的表單和不基于這次請求方法的表單。我們將使用POST來提交表單。如果我們得到一個GET請求,一個空的表單必須顯示,而如果我們得到一個POST請求,則表單需要提交和處理。因此,我們使用request.method=='POST'來區分這兩種場景。


          下面是展示和操作表單的過程:


          1.通過GET請求視圖(view)被初始加載后,我們創建一個新的表單實例,用來在模板(template)中顯示一個空的表單:


          form=EmailPostForm()

          2.當用戶填寫好了表單并通過POST提交表單。之后,我們會用保存在request.POST中提交的數據創建一個表單實例。


          if request.method=='POST':

          # Form was submitted

          form=EmailPostForm(request.POST)

          3.在以上步驟之后,我們使用表單的is_valid()方法來驗證提交的數據。這個方法會驗證表單引進的數據,如果所有的字段都是有效數據,將會返回True。一旦有任何一個字段是無效的數據,is_valid()就會返回False。你可以通過訪問 form.errors來查看所有驗證錯誤的列表。

          4如果表單數據驗證沒有通過,我們會再次使用提交的數據在模板(template)中渲染表單。我們會在模板(template)中顯示驗證錯誤的提示。

          5.如果表單數據驗證通過,我們通過訪問form.cleaned_data獲取驗證過的數據。這個屬性是一個表單字段和值的字典。


          3.使用Django發送email

          使用Django發送email非常簡單。首先,你需要有一個本地的SMTP服務或者通過在你項目的settings.py文件中添加以下設置去定義一個外部SMTP服務器的配置:

          • EMAIL_HOST: SMTP服務地址。默認本地。
          • EMAIL_POSR: SMATP服務端口,默認25。
          • EMAIL_HOST_USER: SMTP服務的用戶名。
          • EMAIL_HOST_PASSWORD: SMTP服務的密碼。
          • EMAIL_USE_TLS: 是否使用TLS加密連接。
          • EMAIL_USE_SSL: 是否使用隱式的SSL加密連接。


          運行命令python manage.py shell來打開Python shell,發送一封email如下所示:

          send_mail()方法需要這些參數:郵件主題,內容,發送人以及一個收件人的列表。通過設置可選參數fail_silently=False,我們告訴這個方法如果email沒有發送成功那么需要拋出一個異常。如果你看到輸出是1,證明你的email發送成功了。


          現在,我們要將以上代碼添加到我們的視圖(view)中。在blog應用下的views.py文件中編輯post_share視圖


          請注意,我們聲明了一個sent變量并且當帖子被成功發送時賦予它True。當表單成功提交的時候,我們之后將在模板(template)中使用這個變量顯示一條成功提示。由于我們需要在email中包含帖子的超鏈接,所以我們通過使用post.get_absolute_url()方法來獲取到帖子的絕對路徑。我們將這個絕對路徑作為request.build_absolute_uri()的輸入值來構建一個完整的包含了HTTP schema和主機名的url。我們通過使用驗證過的表單數據來構建email的主題和消息內容并最終給表單to字段中包含的所有email地址發送email。


          現在你的視圖(view)已經完成了,別忘記為它去添加一個新的URL模式。打開你的blog應用下的urls.py文件添加post_share的URL模式如下所示:


          4.在模板中渲染表單

          在通過創建表單,編寫視圖(view)以及添加URL模式后,我們就只剩下為這個視圖(view)添加模板(tempalte)了。在blog/templates/blog/post/目錄下創建一個新的文件并命名為share.html。在該文件中添加如下代碼:


          編輯你的blog/post/detail.html模板(template),在{{ post.body|linebreaks }}變量后面添加如下的鏈接來分享帖子的URL:


          請記住,我們通過使用Django提供的{% url %}模板(template)標簽(tag)來動態的生成URL。我們以blog為命名空間,以post_share為URL,同時傳遞帖子ID作為參數來構建絕對的URL。


          現在,通過python manage.py runserver命令來啟動開發服務器,在瀏覽器中打開 http://127.0.0.1:8000/blog/ 。點擊任意一個帖子標題查看詳情頁面。在帖子內容的下方,你會看到我們剛剛添加的鏈接,如下所示:

          度站長平臺提供的死鏈提交工具,可將網站存在的死鏈(協議死鏈、404頁面)進行提交,可快速刪除死鏈,幫助網站SEO優化。在提交死鏈的文件中逐個手動填寫死鏈的話太麻煩,工作中我們提倡復雜自動化,所以本文我們一起交流分享Apache服務中通過shell腳本整理網站死鏈,便于我們提交。

          1.配置Apache記錄搜索引擎

          Apache是目前網站建設最為主流的web服務,但是apache的日志文件默認是不記錄百度、谷歌等各大搜索引擎的爬取程序的,所以首先需要我們設置Apache的配置文件。

          找到Apache的配置文件httpd.conf,在配置文件中找到下面兩行:

          CustomLog "logs/access_log" common
           #CustomLog "logs/access_log" combined
          

          默認采用的是common,這里我們只需要將common這一行前面加#注釋掉,然后將combined這一行前的#去掉即可。然后保存重啟Apache服務。

          注:如果你的服務器上添加了多個站點,每個站點有單獨的配置文件,則我們只需要在相應站點的配置文件中設置CustomLog項即可,例如:

          vim /usr/local/apache/conf/vhost/www.chanzhi.org.conf
           ServerAdmin [email protected] DocumentRoot "/data/wwwroot/www.chanzhi.org"
           ServerName www.chanzhi.org
           ServerAlias chanzhi.org
           ErrorLog "/data/wwwlogs/www.chanzhi.org_error_apache.log"
           CustomLog "/data/wwwlogs/www.chanzhi.org_apache.log" combined
           SetOutputFilter DEFLATE
           Options FollowSymLinks ExecCGI
           Require all granted
           AllowOverride All
           Order allow,deny
           Allow from all
           DirectoryIndex index.html index.php
          

          下面是配置前后的網站日志記錄格式:

          配置前:

          配置后:

          2.編寫shell腳本

          我們通過shell腳本獲取網站日志中指定爬蟲的抓取記錄,然后匯總到一個文件中,便于后期使用。代碼如下,比如保存為deathlink.sh

          #!/bin/bash
          #初始化變量
          #定義蜘蛛UA信息(默認是百度蜘蛛)
          UA='+http://www.baidu.com/search/spider.html'
           
          #前一天的日期(apache日志)
          DATE=`date +%Y%m%d -d "1 day ago"`
           
          #定義日志路徑
          logfile=/data/wwwlogs/www.chanzhi.org_apache.log-${DATE}.log
           
          #定義死鏈文件存放路徑
          deathfile=/data/wwwroot/www.chanzhi.org/deathlink.txt
           
          #定義網站訪問地址
          website=http://www.chanzhi.org
           
          #分析日志并保存死鏈數據
          for url in `awk -v str="${UA}" '$9=="404" && $15~str {print $7}' ${logfile}`
          do
           grep -q "$url" ${deathfile} || echo ${website}${url} >>${deathfile}
          done
          

          大家在使用該腳本時,根據自己服務器情況調整下路徑和字段即可,然后執行腳本,:

          bash deathlink.sh
          

          3.提交死鏈

          執行上面腳本時候,就會在指定目錄下生成包含所有獲取的404頁面鏈接的文件,每個連接占一行。例如:

          最后在站長平臺提交死鏈頁面中,填寫自己的死鏈文件地址即可,例如:

          百度在審核通過之后,會將已經收錄的失效鏈接刪除,以避免失效頁面鏈接對網站造成不良的影響。


          主站蜘蛛池模板: 日本高清不卡一区| 国产对白精品刺激一区二区| 国产一区麻豆剧传媒果冻精品| 国产AV午夜精品一区二区三区| 成人精品一区二区三区电影| 国产免费一区二区视频| 亚洲国产一区明星换脸| 亚洲av无码一区二区三区天堂 | 日本一区二区三区爆乳| 久久久久99人妻一区二区三区| 国产韩国精品一区二区三区| 国产视频一区在线播放| 国产精品视频无圣光一区| 人妻夜夜爽天天爽一区| 成人免费一区二区三区在线观看| 麻豆aⅴ精品无码一区二区| 国精产品一区一区三区| 亚洲AV乱码一区二区三区林ゆな| 夜夜嗨AV一区二区三区| 国产成人精品一区二区三区无码| 精品人妻一区二区三区毛片| 精品乱子伦一区二区三区高清免费播放| 国产精品免费综合一区视频| 日韩免费无码一区二区视频| 国产在线一区二区三区在线| 动漫精品一区二区三区3d| 全国精品一区二区在线观看| 一区二区三区在线观看中文字幕| 合区精品久久久中文字幕一区 | 中文无码一区二区不卡αv | 国模私拍一区二区三区| 亚洲综合色自拍一区| 日韩精品中文字幕无码一区| 国产香蕉一区二区精品视频| 成人精品一区二区电影| 国产激情无码一区二区三区| 夜夜添无码一区二区三区| 国产精品视频一区二区三区| 成人免费视频一区二区三区| 国产另类ts人妖一区二区三区| 亚洲线精品一区二区三区影音先锋|