2013-01-25 45 views
1

確定。希望有人能幫助我與suggestion-HTTPS和HTTP合併的.htaccess(不同的問題)

  1. 我使用了WordPress多站點的子文件夾
  2. 我使用WooCommerce
  3. 我有性病的Ubuntu 12.04 /與GoDaddy的證書LAMP服務器安裝

如果啓用SSL,它影響了我的整個域(明顯),所以我的主站點結束: 「https://main-sitename.com」

我MULT isite博客也成爲: https://main-sitename.com/blogname-1 https://main-sitename.com/blogname-2

等等。我的所有菜單鏈接也都是https,它禁用了外部鏈接,因爲這些網址都預先加上了https。 : -/

我所試圖做的就是這樣的:

http://main-sitename.com http://main-sitename.com/blogname-1 http://main-sitename.com/blogname-2

https://main-sitename.com/shop/(Woocommerce將迫使HTTPS結賬,然後在完成時未付諸實施)。

  • 那麼,任何人有任何想法,我可以如何補救這一點?有趣的是,當我在Rackspace Cloud Sites上有相同的站點時,一切正常。當我轉移到自我管理的Cloudserver時,發生了這種情況。有什麼我錯過了嗎?

謝謝! -M

回答

0

這聽起來像SSLRequireSSL已設置爲整個服務器。由於您只需要在/ shop /目錄上執行HTTPS。添加.htaccess文件中包含該目錄:

RewriteEngine On 
RewriteCond %{HTTPS} !=on 
RewriteRule^https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301] 

這將迫使任何人連接到你的店鋪以http://重定向到相同的URI,但https://開頭

編輯2

這對我的作品(含www.myserver.com改變我真正的服務器名稱)。我在WP中使用日期和名字永久鏈接。當我去http://www.myserver.com/shop/我重定向到HTTPS。它保留了URI。

# BEGIN WordPress 
<IfModule mod_rewrite.c> 
RewriteEngine On 
# Addition to force redirect to https when they visit the shop! 
RewriteBase/
RewriteCond %{HTTPS} !on 
RewriteRule (shop/.*$) https://www.myserver.com/$1 [R=301,L] 
# Back to WordPress changes 
RewriteBase/
RewriteRule ^index\.php$ - [L] 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . /index.php [L] 
</IfModule> 

# END WordPress 
+0

感謝埃裏克。似乎它會工作,除了WordPress使/ subdirs動態。由於它是動態生成的,因此沒有實際的文件夾。但是htaccess會重寫URL。有什麼我可以把我的基礎wordpress文件夾(這是wordpress堅持的htaccess)的htaccess文件,這將強制我的網址被重寫爲http(不是https),並讓商店網址爲https? (希望這個問題很有意義) –

+0

你應該可以在你的.htaccess的基礎上做基本相同的事情。單獨留下RewriteCond。 RewriteRule將需要更改。讓我編輯一下,看看我能否儘可能地接近規則。 –

+0

任何建議,你可以給我將不勝感激。謝謝埃裏克 –