簡體   English   中英

Apache2:使用循環重寫的mod_rewrite

[英]Apache2: mod_rewrite with circular rewriting

我想通過以下方式為特定子域加載private站點,而不創建新的虛擬主機(用於不創建和重復虛擬主機配置):

  • 用戶寫priv.mydomain.com
  • mod_rewrite將/ priv附加到URL而不進行重定向。
  • Alias指令獲取/ priv並加載/ other_system_path / private
  • private頁面已加載,但用戶看不到URL的任何更改。

我當前的配置如下(在適當的虛擬主機內部):

Alias /priv /other_system_path/private

RewriteEngine on
RewriteCond %{HTTP_HOST} ^priv\.mydomain\.com$
RewriteRule (.*) /priv [PT]

如果我沒記錯的話, PT標志是用於重復URL映射的過程,因為priv. ,它再次變成了RewriteRule priv. 保留在URL中。

我該如何實現?

如果我沒記錯的話,PT標志是用於重復URL映射的過程,因為priv,它再次變成了RewriteRule。 保留在網址中

您可以通過添加以下條件來跳過子請求的規則

RewriteCond %{IS_SUBREQ} false

根據手冊

IS_SUBREQ

如果當前正在處理的請求是子請求,則將包含文本“ true”,否則將包含“ false”。 子請求可能由需要解析其他文件或URI才能完成其任務的模塊生成。

ps:而且,我認為您需要RewriteRule ^/?(.*)$ /priv/$1 [PT] ,以便將任何請求轉換為正確的請求,而不僅僅是別名的“根”。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM