iT邦幫忙

0

請幫忙協助 apache rewrite 的問題

  • 分享至 

  • xImage

各位大大好,
小弟的 rewrite 觀念相當薄弱,
所以希望在此有大大可以餵小弟解惑。

小弟有一段轉址設定必須加入apache 設定中:
只要網址中含有 /api/ 或 /adm/ 字串就不跳轉直接依網址輸出,
假如不含有以上任一字串就跳轉到 google頁面,
RewriteCond %{REQUEST_URI} !^/api[/] [OR]
RewriteCond %{REQUEST_URI} !^/adm[/]
RewriteRule ^/(.*) http://www.google.com [L,R]

假如是沒有 "!" ,可以在含有關鍵字串時正確跳轉,但是加了反向條件 "!" 卻變成任何的網址都會跳轉。
請問哪個部分有錯?弄好久搞不定 .... ???
謝謝。

把OR拿掉看看呢? 我的想法是~ ( P or Q ) -> ~P and ~Q
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 個回答

0
echochio
iT邦高手 1 級 ‧ 2021-05-30 00:49:15

看是當請求的網址 "不包含 /api" 或 "不包含/adm" 時 跳轉 google
好像是這樣子
apache 好久沒用都用 nginx ........

試試將

 !/^api/

改成

 !^api/

這樣試試看
不知行不行 ....
看像是是正則表達式的問題

pohsien08 iT邦新手 5 級 ‧ 2021-05-31 09:44:48 檢舉

謝謝你的回應,
我的問題與你的理解一樣,
但是改用了你的回答後結果還是一樣,
不管輸入什麼網址都會跳轉到 google....

我要發表回答

立即登入回答