基本上,我在我的主要網站(http://www.jamesandersonjr.com)的「public_html」目錄(Apache服務器)的根目錄中有一些子目錄。主網站文件直接位於'public_html'根目錄中,而其他網站(具有自己的獨立域名)則位於下的子文件夾/子目錄的根目錄下。如何防止.htaccess將規則從級聯重定向到位於'public_html'根目錄的子目錄中的網站?
我遇到的問題是我的.htaccess文件(在'public_html'的根目錄中)的一些規則是級聯下來,影響其他網站,在上述子目錄(因此,他們自己單獨網站)。下面是規則:
RedirectMatch 301 "^\/facebook\/?$" "/facebook.php"
RedirectMatch 301 "^\/twitter\/?$" "/twitter.php"
RedirectMatch 301 "^\/youtube\/?$" "/youtube.php"
RedirectMatch 301 "^\/bug_?report\/?$" "/bug_report.php"
RedirectMatch 301 "^\/bugreport\.(php|html?)(\?)?$" "/bug_report.php"
這些規則.htaccess文件中,在我的主要網站:http://www.jamesandersonjr.com 但在第一次瞞着我,他們也影響到另一個網站,是在一個子目錄,根目錄。
如何防止這種「級聯」的發生,或者如何重寫規則以僅包含與主網站相關的路徑(在上面的代碼中):http://www.jamesandersonjr.com,而不是子文件夾/子目錄呢?
注意:在完整代碼重寫的情況下,我需要能夠保留url參數/變量(特別是'GET')(尤其是在上面的代碼中的最後一條規則中)。例如:
http://www.jamesandersonjr.com/bugreport.php?page_domain=http://www.example.com
自動變爲:提前
http://www.jamesandersonjr.com/bug_report.php?page_domain=http://www.example.com
感謝你的幫助。
嘿SuperDuperApps,請逃避那些時期,所以我可以批准你的答案。謝謝! –
它不需要轉義期。這是一個字符串比較,而不是正則表達式。很高興它對你有效。 – SuperDuperApps
現在,我將如何*包含'jamesandersonjr.com'的子域,而仍然*排除其他網站在根目錄的子目錄中? –