[英]How do I properly redirect a dynamic URL to a static URL of my choice using htaccess?
我設置了一個問答類型的東西,當訪客要提出問題時,他們必須先登錄。 登錄是動態的; 該頁面位於:
http://discuss.nationalcdp.org/questions/
那里,“問”按鈕指向:
https://discuss.nationalcdp.org/questions/ask
當非登錄的訪客單擊此按鈕時,他們將被重定向到:
https://discuss.nationalcdp.org/ncdp-login/?redirect_to=https%3A%2F
%2Fdiscuss.nationalcdp.org%2Fquestions%2Fask
我進入了cPanel並配置了重定向( 使用和不使用通配符)均無濟於事。 我試過了:
https://discuss.nationalcdp.org/ncdp-login/ redirects to:
https://discuss.nationalcdp.org/login/
最后,我知道這行不通,但還是嘗試了一下,我設置了:
https://discuss.nationalcdp.org/ncdp-login/?redirect_to=https%3A%2F
%2Fdiscuss.nationalcdp.org%2Fquestions%2Fask redirects to
https://discuss.nationalcdp.org/login/
我應該遠離cPanel並使用根.htaccess文件進行處理嗎?
這就是cPanel寫到我的htaccess文件的內容,基本上我在這里嘗試獲取/ subdomain / ncdp-login和/ subdomain / register /重定向到根域:
RewriteCond %{HTTP_HOST} ^directory\.nationalcdp\.org$ [OR]
RewriteCond %{HTTP_HOST} ^www\.directory\.nationalcdp\.org$
RewriteRule ^ncdp\-login$ "https\:\/\/nationalcdp\.org\/profile\/login\/" [R=301,L]
RewriteCond %{HTTP_HOST} ^directory\.nationalcdp\.org$ [OR]
RewriteCond %{HTTP_HOST} ^www\.directory\.nationalcdp\.org$
RewriteRule ^register\/$ "https\:\/\/nationalcdp\.org\/profile\/register\/" [R=301,L]
RewriteCond %{HTTP_HOST} ^discuss\.nationalcdp\.org$ [OR]
RewriteCond %{HTTP_HOST} ^www\.discuss\.nationalcdp\.org$
RewriteRule ^register\/$ "https\:\/\/nationalcdp\.org\/profile\/register\/" [R=301,L]
RewriteCond %{HTTP_HOST} ^forums\.nationalcdp\.org$ [OR]
RewriteCond %{HTTP_HOST} ^www\.forums\.nationalcdp\.org$
RewriteRule ^ncdp\-login$ "https\:\/\/nationalcdp\.org\/profile\/login\/" [R=301,L]
RewriteCond %{HTTP_HOST} ^forums\.nationalcdp\.org$ [OR]
RewriteCond %{HTTP_HOST} ^www\.forums\.nationalcdp\.org$
RewriteRule ^register\/$ "https\:\/\/nationalcdp\.org\/profile\/register\/" [R=301,L]
RewriteCond %{HTTP_HOST} ^discuss\.nationalcdp\.org$ [OR]
RewriteCond %{HTTP_HOST} ^www\.discuss\.nationalcdp\.org$
RewriteRule ^ncdp\-login\/?(.*)$ "https\:\/\/nationalcdp\.org\/profile\/login\/$1"
[R=301,L]
非常感謝您提供有關如何獲取此動態生成的登錄URL以重定向到https://discuss.nationalcdp.org/login/的指導 !
您可以將此規則作為第一個規則放在RewriteEngine On
下面:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^discuss\.nationalcdp\.org$
RewriteRule ^ncdp-login/?$ /profile/login/? [L,NC,R=302]
注釋掉(刪除) /ncdp-login
所有其他規則。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.