簡體   English   中英

共享服務器上的Apache mod_rewrite幫助

[英]Apache mod_rewrite help on shared server

我正在使用具有多個域的共享托管服務器,並且我的主.htaccess(在public_html /目錄內部)將所有流量重定向到該服務器到我的主域(很好)。 現在的問題變成了,我在子域包含在%{REQUEST_URI}變量中的主域上運行了Wordpress。 所以我的.htaccess代碼:

RewriteRule .* https://%{HTTP_HOST}/index.php?%{REQUEST_URI} [L,R=301]

動作:

http://www.tonydiloreto.com/about/

至:

https://www.tonydiloreto.com/?/tonydiloreto/about/

(我把?放在那里,這樣我就可以看到變量中存儲了什么)。 我的問題是,重寫時如何使用正則表達式從%{REQUEST_URI}變量中刪除其他/ tonydiloreto 如果這是PHP,我會這樣做:

$new_url = str_replace("/tonydiloreto", "", %{REQUEST_URI});

如果這樣的話。 如果您想了解我在說什么,請立即訪問我的網站(tonydiloreto.com),並在斜杠后面加上任何內容。

謝謝!

不太確定這里的問題是什么...您只需指定一個僅捕獲uri部分的請求規則。 有數以百萬計的示例...

RewriteEngine on
RewriteRule ^/tonydiloreto/(.*)$ https://%{HTTP_HOST}/index.php?$1 [L,R=301]

顯然,這已記錄在案: http : //httpd.apache.org/docs/current/mod/mod_rewrite.html

注意:以上是主機配置的版本。 如果確實需要使用.htaccess樣式文件,則必須從模式中刪除前導斜杠( / ),因為此類文件適用於相對URI。 眾所周知, .htaccess風格的文件容易出錯,難以調試,並且確實降低了服務器的速度。

暫無
暫無

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

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