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 中国大陆一级毛片,久久久久久免费视频,亚洲视频网站在线观看

          整合營銷服務(wù)商

          電腦端+手機端+微信端=數(shù)據(jù)同步管理

          免費咨詢熱線:

          vue2本地開發(fā)環(huán)境正常,生產(chǎn)環(huán)境下this.$ro

          vue2本地開發(fā)環(huán)境正常,生產(chǎn)環(huán)境下this.$router.push()不跳轉(zhuǎn)

          果在Vue.js 2中在本地開發(fā)環(huán)境下正常運行,但在生產(chǎn)環(huán)境下使用?this.$router.push({ name: 'login' })??不起作用,可能有幾個原因需要檢查和解決:

          1. 路由配置問題: 確保你的路由配置正確,特別是確保在生產(chǎn)環(huán)境中,路由的配置和本地開發(fā)環(huán)境一致。檢查是否正確設(shè)置了name為'login'的路由。
          // 示例路由配置
          const routes=[
            {
              path: '/login',
              name: 'login',
              component: LoginComponent,
            },
            // 其他路由配置...
          ];
          1. 路由模式問題: Vue Router 默認使用哈希模式(mode: 'hash'),但在生產(chǎn)環(huán)境中,你可能想要使用歷史模式(mode: 'history')。確保在生產(chǎn)環(huán)境下也設(shè)置了相同的路由模式。
          // 路由配置中設(shè)置 mode
          const router=new VueRouter({
            mode: 'history',
            routes,
          });
          1. 路由實例問題: 確保在你調(diào)用this.$router.push({ name: 'login' })之前,this.$router是一個有效的路由實例。你可以在控制臺中輸出this.$router,確保它不是undefinednull
          2. 路由守衛(wèi)問題: 如果有使用路由守衛(wèi)(如beforeEach),確保它們沒有阻止或重定向到其他地方,導(dǎo)致this.$router.push({ name: 'login' })無法正常執(zhí)行。
          3. Webpack 配置問題: 如果你使用了Webpack等構(gòu)建工具,確保在生產(chǎn)環(huán)境中的構(gòu)建配置中沒有引起問題的地方,例如資源路徑的配置等。
          4. 瀏覽器緩存問題: 有時瀏覽器可能會緩存舊的 JavaScript 文件。嘗試清除瀏覽器緩存或使用不同的瀏覽器進行測試。

          在檢查和解決以上可能的問題之后,你應(yīng)該能夠在生產(chǎn)環(huán)境中成功執(zhí)行??this.$router.push({ name: 'login' })??。如果問題仍然存在,請檢查瀏覽器的開發(fā)者工具(控制臺、網(wǎng)絡(luò)面板等),查看是否有任何錯誤消息。

          篇,你可以學(xué)到Ember頁面的創(chuàng)建,并且在不同的頁面之間跳轉(zhuǎn)。新建兩個頁面,一個是創(chuàng)建about頁面,一個是創(chuàng)建contact頁面。


          看完本篇你將學(xué)到如下知識點:

          • 定義路由
          • 使用路由模板
          • 自定義路由URL
          • 使用<LinkTo>組件在不同模板之間跳轉(zhuǎn)
          • 組件之間傳遞參數(shù)、屬性


          定義路由

          在前一篇,我們定義了一個index.hbs首頁,接著繼續(xù)在templates下面創(chuàng)建新的頁面。

          首先通過Ember CLI創(chuàng)建一個路由,

          ember g route about

          本機創(chuàng)建日志:

          ubuntuvim at ubuntuvim-mbp.local in [~/code/super-rentals]  on git:master ?  9b5a1ac "Initial Commit from Ember CLI v3.18.0"
          
          23:22:20 ? ember g route about
          
          installing route
          
            create app/routes/about.js
          
            create app/templates/about.hbs
          
          updating router
          
            add route about
          
          installing route-test
          
            create tests/unit/routes/about-test.js

          題外話:

          ubuntuvim at ubuntuvim-mbp.local in [~/code/super-rentals] on git:master ? 9b5a1ac "Initial Commit from Ember CLI v3.18.0"

          23:22:20 ?

          這一段是我本機命令行自動前綴,如果你的命令行安裝過zsh這個工具,就會很熟悉,zsh是一個非常強大而且漂亮的命令行工具。

          打開router.js,可以看到自動創(chuàng)建了一個路由this.route('about');


          使用路由模板

          修改about路由模板文件app/templates/about.hbs,在文件內(nèi)添加一下HTML內(nèi)容。

          {{!-- app/templates/about.hbs --}}
          
          <div class="jumbo">
            <div class="right tomster"></div>
            <h2>About Super Rentals</h2>
            <p>
              The Super Rentals website is a delightful project created to explore Ember.
              By building a property rental site, we can simultaneously imagine traveling
              AND building Ember applications.
            </p>
          </div>

          瀏覽器訪問驗證:http://localhost:4200/about。可以看到about頁面的內(nèi)容


          使用同樣的方式創(chuàng)建contact路由。

          ubuntuvim at ubuntuvim-mbp.local in [~/code/super-rentals]  on git:master ?  9b5a1ac "Initial Commit from Ember CLI v3.18.0"
          
          23:22:37 ? ember g route contact
          
          installing route
          
            create app/routes/contact.js
          
            create app/templates/contact.hbs
          
          updating router
          
            add route contact
          
          installing route-test
          
            create tests/unit/routes/contact-test.js

          在contact.hbs添加一些HTML內(nèi)容。

          {{!-- app/templates/contact.hbs --}}
          <div class="jumbo">
            <div class="right tomster"></div>
            <h2>Contact Us</h2>
            <p>
              Super Rentals Representatives would love to help you<br>
              choose a destination or answer any questions you may have.
            </p>
            <address>
              Super Rentals HQ
              <p>
                1212 Test Address Avenue<br>
                Testington, OR 97233
              </p>
              <a href="tel:503.555.1212">+1 (503) 555-1212</a><br>
              <a href="mailto:superrentalsrep@emberjs.com">superrentalsrep@emberjs.com</a>
            </address>
          </div>

          瀏覽器訪問驗證:http://localhost:4200/contact。可以看到contact頁面的內(nèi)容


          contact1.png


          自定義路由URL

          前面已經(jīng)定義了兩個頁面,一個是about一個是contact。默認情況下訪問的路徑都是和路由同名的,另外Ember提供了非常靈活的擴展,你可以自定義的路由的訪問路徑,比如下面的代碼,把contact路由的訪問路徑改為getting-in-touch,手動修改router.js文件。

          Router.map(function() {
            this.route('about');
            this.route('contact', { path: '/getting-in-touch' });
          });

          注意看第三行,使用path屬性指定這個路由的訪問路徑為getting-in-touch

          現(xiàn)在你在訪問http://localhost:4200/contact就會發(fā)現(xiàn)報錯了,提示找不到這個路由了。


          contact2.png

          再訪問http://localhost:4200/getting-in-touch。可以看到頁面的內(nèi)容就是之前contact的內(nèi)容。


          contact3.png


          使用<LinkTo>組件在不同模板之間跳轉(zhuǎn)

          <LinkTo>是Ember提供好的組件,用于在不同模板之間跳轉(zhuǎn),其作用類似于HTML標簽中的<a>標簽。

          為何不直接用<a>標簽而是要自定義一個跳轉(zhuǎn)的組件呢??因為使用普通的<a>標簽,當你點擊鏈接的時候會發(fā)送瀏覽器的刷新,但是Ember是單頁應(yīng)用不需要刷新整個頁面,只要是實現(xiàn)頁面的跳轉(zhuǎn)即可(所謂的跳轉(zhuǎn)其實就是實現(xiàn)不同的路由之間的切換,并且不會刷新頁面)。

          繼續(xù)改造前面的創(chuàng)建的index,about和contact。分別在這兩個模板頁面中添加一個跳轉(zhuǎn)的鏈接。


          {{!-- index.hbs是 "/" 這個路徑默認的頁面。 --}}
          
          <div class="jumbo">
            <div class="right tomster"></div>
            <h2>Welcome to Super Rentals!</h2>
            <p>We hope you find exactly what you're looking for in a place to stay.</p>
            
            {{!-- 使用LinkTo組件添加一個跳轉(zhuǎn)按鈕,并且指定調(diào)整到的路由是about,也就是說當用戶點擊這按鈕的時候會跳轉(zhuǎn)到about這個子頁面上 --}}
            <LinkTo @route="about" class="button">About Us</LinkTo>
            
          
            
            <a href="/about" class="button">About Us With A Tag</a>
          </div>


          index5.png

          點擊“About Us”這個按鈕,然后看瀏覽器的地址欄,可以看到自動轉(zhuǎn)到about這個路由下,并且頁面不會刷新。為了驗證前面所說的效果,我在About Us后面添加了一個<a>標簽按鈕,當你點擊這個鏈接的時候會看到瀏覽器自動刷新了,并且也跳轉(zhuǎn)到about頁面上。


          index6.png


          繼續(xù)改造about和contact,分別添加跳轉(zhuǎn)按鈕。

          {{!-- app/templates/about.hbs --}}
          <div class="jumbo">
            <div class="right tomster"></div>
            <h2>About Super Rentals</h2>
            <p>
              The Super Rentals website is a delightful project created to explore Ember.
              By building a property rental site, we can simultaneously imagine traveling
              AND building Ember applications.
            </p>
            
            <LinkTo @route="contact" class="button">Contact Us</LinkTo>
            {{!-- 增加一個跳轉(zhuǎn)回到首頁的鏈接 --}}
            <LinkTo @route="index" class="button">Index</LinkTo>
          </div>
          {{!-- app/templates/contact.hbs --}}
          <div class="jumbo">
            <div class="right tomster"></div>
            <h2>Contact Us</h2>
            <p>
              Super Rentals Representatives would love to help you<br>
              choose a destination or answer any questions you may have.
            </p>
            <address>
              Super Rentals HQ
              <p>
                1212 Test Address Avenue<br>
                Testington, OR 97233
              </p>
              <a href="tel:503.555.1212">+1 (503) 555-1212</a><br>
              <a href="mailto:superrentalsrep@emberjs.com">superrentalsrep@emberjs.com</a>
            </address>
            
            <LinkTo @route="about" class="button">About</LinkTo>
            {{!-- 增加一個跳轉(zhuǎn)回到首頁的鏈接 --}}
            <LinkTo @route="index" class="button">Index</LinkTo>
          </div>

          在about和contact兩個頁面添加了兩個跳轉(zhuǎn)按鈕,一個是about和contact頁面的相互跳轉(zhuǎn),一個是跳轉(zhuǎn)回首頁的按鈕。


          about3.png


          contact4.png


          通過前面的這三個頁面,相信你很容易就可以掌握<LinkTo>組件的使用。其中@route屬性指定的是你定義的路由名字,這個路由的名字要和router.js里面的定義的完全一致,否則會找不到。另外需要注意的是@route屬性的值一定是路由的名字而不是URL的名字,比如contact路由,這個路由的路由名是contact而不是訪問的getting-in-touch。

          另外在<LinkTo>組件上可以使用普通的HTML屬性,比如上面使用的class屬性,這個class屬性就是普通HTML屬性,用于指定CSS樣式的。在Ember應(yīng)用中,通過@符號區(qū)別是普通的HTML屬性還是Ember提供的屬性,比如上面使用的@route就是Ember提供的屬性。

          在底層,<LinkTo>組件會為我們生成一個常規(guī)的<a>標簽,并帶有針對特定路由的href。通過Ember生成的這個<a>標簽對于用戶來說非常友好,無需頁面刷新就可以實現(xiàn)跳轉(zhuǎn)。 簡單講,當單擊這些特殊鏈接之一時,Ember將攔截該單擊,呈現(xiàn)新頁面的內(nèi)容,并更新URL(所有這些操作均在本地執(zhí)行,而無需等待服務(wù)器),從而避免刷新整個頁面。

          家對URL任意跳轉(zhuǎn)都肯定了解,也知道他的危害,這里我就不細說了,過~

          大家遇到的肯定都是很多基于這樣的跳轉(zhuǎn)格式

          http://www.xxx.xxx/xxx?xxx=http://www.xxx.xxx/xxxxx

          基本的思路大家就是直接替換后面的URL來檢測是否存在任意URL跳轉(zhuǎn),如果不存在,就直接返回到它自己的域名,如果存在,就跳轉(zhuǎn)到你指定的URL,

          這里我講述我所知道的所有小點。

          0x01 利用問號繞過限制

          利用問號,這是一個特性,利用問號可以成功繞過URL限制

          比如:http://www.aaa.com/acb?Url=http://login.aaa.com 這是一個跳轉(zhuǎn)鏈接,跳轉(zhuǎn)到它的二級域名下,那么這個問號放哪里可以繞過呢?其實就是放到它自身的域名前面也就是你添加的想要跳轉(zhuǎn)的域名的后面,如:http://www.aaa.com/acb?Url=http://test.com?login.aaa.com 那么,它其實是會跳轉(zhuǎn)到這個test.com域名下,這個域名是我想要跳轉(zhuǎn)的任意域名,而后面的它自身域名一定要帶上,不帶上就無法輔助用問號?這個特性來跳轉(zhuǎn)到指定域名了,而跳轉(zhuǎn)后,問號和問號后面的內(nèi)容會變?yōu)檫@樣:http://www.test.com/?login.aaa.com

          0x02 利用反斜杠和正斜杠繞過限制

          這個是我自己研究出來的,不知道是否網(wǎng)上有人說過。

          比如:http://www.aaa.com/acb?Url=http://login.aaa.com/ 同樣是在它本身域名前加上正斜杠,然后正斜杠前面跟上你想跳轉(zhuǎn)的域名地址。

          如:http://www.aaa.com/acb?Url=http://test.com/login.aaa.com

          反斜杠有三種思路

          兩個反斜杠繞過方法

          比如:http://www.aaa.com/acb?Url=http://login.aaa.com/ 同樣是在它本身域名前加上兩個反斜杠,然后兩個反斜杠前面跟上你想跳轉(zhuǎn)的域名地址。

          如:http://www.aaa.com/acb?Url=http://test.com\login.aaa.com

          一個反斜杠繞過方法

          如:http://www.aaa.com/acb?Url=http://test.comlogin.aaa.com

          另一種思路,一個反斜杠一個點

          利用.這樣的格式,也就是一個反斜杠加一個點來跳過限制,

          如:http://www.aaa.com/acb?Url=http://test.com.login.aaa.com

          0x03 利用@繞過URL限制

          如果你用這方法在火狐里進行跳轉(zhuǎn),會有彈窗提示,在其它游覽器則沒有。

          如:<a href=”http://www.aaa.com/acb?Url=http://login.aaa.com@test.com“”>http://www.aaa.com/acb?Url=http://login.aaa.com@test.com 后面的test.com就是要跳轉(zhuǎn)到的域名,前面的域名都是用來輔助以繞過限制的。

          0x04 利用白名單缺陷繞過限制

          有的域名白名單限制是不全的,比如如果想利用一個跳轉(zhuǎn),而這個跳轉(zhuǎn)是通用,在這個公司網(wǎng)站很多子域名等都可以跳轉(zhuǎn),那么你買個域名也不算貴對吧。

          為什么這么說呢,這個問題就是白名單限制不當,比如,當跳轉(zhuǎn)的域名包含這個網(wǎng)站下的所有域名,比如:http://www.aaa.com/acb?Url=http://login.aaa.com

          這個login.aaa.com也可以改成aaa.com同樣可以跳轉(zhuǎn)對吧,因為白名單里只要有包含這個域名就直接成功跳轉(zhuǎn)。

          那么當我在這個域名前面加上如testaaa.com,白名單里會檢查是否包含aaa.com這個域名,如果包含,就直接跳轉(zhuǎn),而并沒有檢查這個域名的整個信息,然后可以利用這個問題,直接注冊一個testaaa.com這個域名就可以利用這個跳轉(zhuǎn)。

          0x05 多重驗證&跳轉(zhuǎn)繞過限制

          現(xiàn)在很多網(wǎng)站都有多重驗證,比如你登陸賬戶后會出現(xiàn)另一個驗證頁面,輸入手機驗證碼進行驗證,此時這上面的URL很可能存在任意跳轉(zhuǎn)的問題。

          多重跳轉(zhuǎn)的問題導(dǎo)致可繞過URL限制

          比如http://www.aaa.com/acb?Url=http: … ttp://login.aaa.com

          當然,還有多重的,這個結(jié)構(gòu)的多重跳轉(zhuǎn)你修改最后面的URL就可以達到任意URL跳轉(zhuǎn),中間的URL就沒必要動了。

          0x06 點擊觸發(fā)達到繞過URL跳轉(zhuǎn)限制

          比如很多登陸頁面的地方,其URL是一個跳轉(zhuǎn)的URL

          如:http://www.aaa.com/acb?Url=http://test.com

          你直接修改了后面為任意URL,但是還是停留在原地,似乎沒什么問題,但是,當你輸入賬號和密碼后點擊登陸按鈕后,就會觸發(fā)跳轉(zhuǎn)。

          當然,這個賬戶和密碼不一定要對的,隨便都可以,但得視系統(tǒng)而定吧。

          這個我遇到了很多,比如你修改了域名,然后點擊登陸,登陸成功后便可觸發(fā)跳轉(zhuǎn),這也是一個比較隱蔽的繞過URL限制的跳轉(zhuǎn)。

          0x07 利用xip.io繞過

          這個我還沒有在測試中應(yīng)用過,其請求是http://www.127.0.0.1.xip.io 這個繞過是在SSRF場景中的繞過,比如SSRF你要讀取內(nèi)網(wǎng)地址,一般都做了限制,可以嘗試用這方法進行繞過限制,從而訪問到內(nèi)網(wǎng)。

          另外一點,URL跳轉(zhuǎn)涉及的安全問題大家常見的就是釣魚,那么利用這個思路也可達成一個釣魚問題,如,http://www.qq.com.220.181.57.217.xip.io

          當你訪問qq這個域名時,其實這個鏈接已經(jīng)被解析到后面這個ip地址上了,那么實際訪問的就是后面這個IP地址。

          0x08 利用超鏈接繞過可信站點限制

          比如一個URL,它是可以直接跳轉(zhuǎn)的,但是一般測試跳轉(zhuǎn)時大家習(xí)慣用www.baidu.com或qq.com這樣的可信站點進行測試,但是有些網(wǎng)站是可以跳轉(zhuǎn)這些網(wǎng)站的。

          只要是可信站點且常用,基本都可以跳轉(zhuǎn),那么這就屬于正常的業(yè)務(wù)邏輯了,難度就這樣錯失一個URL跳轉(zhuǎn)漏洞了?

          其實不然,只要你的URL被百度收錄過,那么直接搜索你的域名,site:xxx.xxx

          因為你在百度里點擊你的域名,它會先是一個302跳轉(zhuǎn),而這個302跳轉(zhuǎn)就是百度下的302跳轉(zhuǎn),那么這樣就可以繞過可信站點的限制,從而達到跳轉(zhuǎn)到指定URL。

          當然,百度這個302有點長,你給它進行加密就行。

          0x09 POST參數(shù)中的URL跳轉(zhuǎn)

          當然,這個影響就很小了,比如當你填什么表格或者需要填寫什么的,當你上傳圖片,點擊下一步的時候,通常下一步就是預(yù)覽你填寫的信息,最后才是提交。

          當你上傳了圖片后點擊下一步抓包,如果過濾不嚴,你會看到圖片的完整地址包含在POST參數(shù)里,你就可以直接修改這個地址為任意URL,然后到達下一步。

          這時是確定信息也就是預(yù)覽自己填寫的信息的正確還是不正確,由于你剛剛修改了圖片地址,這里是沒有顯示出來的,圖像會是一個小XX。

          當點擊圖片右鍵選擇查看圖像時,就會觸發(fā)URL跳轉(zhuǎn)問題,其實這個也可以利用來進行釣魚,釣后臺審核員的信息。

          為什么呢,比如審核看到圖片無法加載,一般都會點擊查看圖片,然后跳轉(zhuǎn),如果安全意識不知就會造成安全影響。

          當然,如果POST參數(shù)里就只是URL跳轉(zhuǎn)參數(shù),那么你可以給它轉(zhuǎn)成GET方式,然后進行跳轉(zhuǎn)就可以了,只要網(wǎng)站支持這樣的GET方式就行。

          在Burp Suite里可以一鍵轉(zhuǎn)換提交方式,右鍵選擇Change request method就可以!

          0x10 利用#號繞過

          如:http://www.aaa.com/acb?Url=http://test.com#login.aaa.com

          小結(jié),想找到任意URL跳轉(zhuǎn)問題,就不要光看表面,一個修改一個回車,不存在就不繼續(xù)深入了,這將永遠無法成長。

          我總結(jié)了我對于URL跳轉(zhuǎn)繞過限制的一些小點,希望能夠幫助到大家!

          原文地址:http://blog.xbbai.site/post-150.html


          主站蜘蛛池模板: 精品人妻少妇一区二区三区| 一区 二区 三区 中文字幕| 亚洲男女一区二区三区| 国产乱码一区二区三区四| 日韩精品一区二区三区国语自制| 国产一区二区高清在线播放| 亚洲AV乱码一区二区三区林ゆな| 多人伦精品一区二区三区视频| 亚洲一区二区在线免费观看| 中文字幕av无码一区二区三区电影| 国产产一区二区三区久久毛片国语| 伊人色综合网一区二区三区| 麻豆AV一区二区三区久久| 亚洲av鲁丝一区二区三区| 国产精品va无码一区二区| 国产天堂一区二区综合| 免费在线观看一区| www一区二区三区| 国产美女露脸口爆吞精一区二区| 香蕉久久AⅤ一区二区三区| 黑人一区二区三区中文字幕| 欧洲精品码一区二区三区免费看| 国产在线一区二区杨幂| 视频一区二区在线观看| 一区二区国产精品| 久久精品国产第一区二区| 成人区人妻精品一区二区不卡网站| 国产伦一区二区三区高清| 国产一区二区高清在线播放| 国产在线一区二区| 人妻体体内射精一区二区| 精品熟人妻一区二区三区四区不卡 | 国产亚洲福利精品一区| 国产凹凸在线一区二区| 亚洲国产国产综合一区首页| 99热门精品一区二区三区无码| 国产福利微拍精品一区二区| 欧洲精品免费一区二区三区| 激情啪啪精品一区二区| 国产免费一区二区三区在线观看| 日韩av无码一区二区三区|