初めて投稿させていただきます。
私もXServerにてここ1週間くらいikuemi様とまったく同様の問題で悩んでおります。
原因追求をしようと奮闘していましたが、良く分かりませんでしたので、
取り急ぎ確認した症状のみご連絡させていただきます。
■WordPress3.3.1を新規インストール⇒Welcart1.1.1をインストール(その他プラグインは一切入れていない状態)。パーマリンク設定がデフォルトでもSLLページに遷移しない事がほとんどです。でもパーマリンク設定がデフォルト(3種類)のいづれかででSSLが通るときもあるのでよくわかりません。
■パーマリンク設定をカスタムにして/%category%/%post_id%などにすると遷移しないことが多かったです。/%post_id%.htmlなどにすると遷移する場合が稀にありました。
■上記新規インストールにて偶然にもSSLページ遷移した場合。またWordPressを上書き更新(自動アップデート)するとSSLページに遷移しなくなってしまいました。(Wordpressアップデートを想定したテストです)
余談ですが、現在のXserverはサーバー側が用意したphp.iniを使用するかしないかをON、OFFにて管理画面で行うようになっています。ONにした場合には、サーバー側で用意されたphp.iniが優先される仕組みのようです。
デフォルトのsession.save_pathの問題かなとも思いましたが、ちゃんと動いているようでした。
.htaccessの設定も特に問題があるような箇所は見受けられません。
※.htaccess
suPHP_ConfigPath /home/***/***.jp/xserver_php/ *php.ini設定パス
AddHandler x-httpd-php5.3 .php .phps
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index.php$ – [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
※Xserver側デフォルトphp.ini(session部分のみ)
[Session]
session.save_handler = files
session.save_path = /var/lib/php/session
session.use_cookies = 1
session.use_only_cookies = 1
session.name = PHPSESSID
session.auto_start = 0
session.cookie_lifetime = 0
session.cookie_path = /
session.cookie_domain =
session.serialize_handler = php
session.gc_probability = 1
session.gc_divisor = 1000
session.gc_maxlifetime = 1440
session.bug_compat_42 = 0
session.bug_compat_warn = 1
session.referer_check =
session.entropy_length = 0
session.entropy_file =
session.cache_limiter = nocache
session.cache_expire = 180
session.use_trans_sid = 0
session.hash_function = 1
session.hash_bits_per_character = 5
的外れでしたらすみません。