我試圖創建一個從http://example.com/links/AAA
到http://links.example.net/l/AAA
(其中AAA
是一個變量)的重定向。我有這個工作。問題是http://example.com/links/
和http://example.com/links
應該重定向到http://links.example.net
(沒有/l/
)。.htaccess跨域重定向
此刻http://example.com/links/
重定向到http://links.example.net/l/
和example.com/links
重定向到http://links.example.net/l//hsphere/local/home/username/example.com/links
。
當前.htaccess
:
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP_HOST} (.+)$ [NC]
RewriteRule ^(.*)$ http://links.example.net/l/$1 [R=301,L]
</IfModule>
僞代碼:
if ($path) {
goto(http://links.example.net/l/${path}/); // Adding the trailing slash is not necessary, but would be handy. Obviously, don't add if it already exists.
} else {
goto(http://links.example.net/);
}
我走過一堆其他.htaccess
問題在這裏看着(好傷心有這麼多),但還沒有找到任何等價。
如果需要,我可以做到這一點不同的方式:
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)$ index.php/$1
</IfModule>
,然後執行重定向在PHP中,在那裏我是有點多在家裏。但是那樣會(a)效率較低,(b)樂趣較少,以及(c)教育程度較低。所以我會試着以正確的方式做到這一點。
謝謝。我會在明天早上嘗試第一件事並回報給你。 – TRiG