2017-04-17 95 views
1

我的問題是,非HTTPS請求和WWW請求重定向到Main_Page,這是很好,當請求的url是根域,但不是如果請求是一篇文章,特殊頁面等。需要一些幫助與重定向.htaccess

示例1: http:// example.com/wiki/Articlename重定向到https:// example.com/wiki/Main_Page,但我想重定向到https:// example.com /維基/ ArticleName的

實施例2: HTTPS:// www.example.com/wiki/Articlename重定向到https:// example.com/wiki/Main_Page,但我要重定向到https://example.com/wiki/Articlename

這是我在.htaccess設置:

<IfModule rewrite_module> 
RewriteEngine On 
RewriteBase/
Options +FollowSymlinks 

# Force HTTP to HTTPS/SSL 
RewriteCond %{SERVER_PORT} 80 
RewriteRule ^(.*)$ https://example.com/$1 [R,L] 

# Redirect Example.com to Example.com/wiki/Main_Page 
RewriteCond %{HTTP_HOST} example\.com [NC] 
RewriteCond %{REQUEST_URI} ^/$ 
RewriteRule ^(.*)$ /wiki/$1 [PT,L] 

# Short url for wiki pages 
RewriteRule ^/?wiki(/.*)?$ %{DOCUMENT_ROOT}/w/index.php [PT,L] 

# Permanent redirect www url to non-www 
RewriteCond %{HTTP_HOST} ^www\.example\.com$ [NC] 
RewriteRule (.*) http://example.com/$1 [L,R=301] 
</IfModule>  

使用共享主機鏈接到MediaWiki(Debian的8傑西,阿帕奇,PHP 5.6),所以httpd.conf的是不是一個選項。 Example.com只提供MediaWiki,這就是域名被重定向到https:// example.com/wiki/Main_Page(默認)的原因。

任何想法我做錯了什麼?

編輯:HTTPS重寫現在正在將「#HTTP HTTP to HTTPS/SSL」移動到.htaccess頂部,但WWW重寫仍然不起作用。代碼已更新。

回答