バージョン選択

フォーラム

メニュー

オンライン状況

82 人のユーザが現在オンラインです。 (72 人のユーザが フォーラム を参照しています。)
登録ユーザ: 1
ゲスト: 81
tattsu もっと...

サイト内検索

 > フロント機能 > httpからhttpsへのリダイレクトが出来ない

フロント機能

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
zara
投稿日時: 2017/2/5 16:18
対応状況: −−−
新米
登録日: 2016/4/19
居住地: 鹿児島県
投稿: 9
httpからhttpsへのリダイレクトが出来ない
度々投稿させていただいております。

ECCUBE3.0.12-p1、さくらインターネットでお客様の通販サイトを運営しております。ラピッドSSL。

サイト全体のSSL化をしたくて、こちらのコミュニティや他もいろいろ探っています。

既存のスレをいろいろ試すも、サイト全体のSSL化はできたのですが、管理ページにアクセスしようすると、通販サイトのトップページにアクセスしてしまいます。
おまけに元々 http://○○○○.com/でアクセスできていたのが、(ECCUBE導入当初にhtmlをURLからはずす対策をしています)
https://○○○○.com/html/index.php/になってしまいます。

トップページは上の html/index.php/を省略しても保護された通信になりますが、実際重要な新規会員登録ページで html/index.phpを外し、https://○○○○.com/entryでアクセスするとアクセス自体はできるものの、カギ付きの保護された通信ではなくなります。

すでに八方ふさがり状態で困り果てております。

下記に現況(SSL化を試みる前の状態に戻しています)のファイルを貼り付けしております。

非常に長々となってしまい、申し訳ないのですが、
どなたかお分かりになる方、ご教授いただけないでしょうか。
宜しくお願いいたします。


----------root直下のhtaccess----------

<FilesMatch "^composer|^autoload|^cli-config|^COPYING|\.(ht|ini|lock|dist|git|sh)$">
order allow,deny
deny from all
</FilesMatch>

<Files ~ "index.php|index_dev.php">
order deny,allow
allow from all
</Files>

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /html/

RewriteRule ^user_data/(.*)$ /html/user_data/$1 [QSA,L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !^(.*)\.(gif|png|jpg|css|ico|js)$ [NC]
RewriteRule ^(.*)$ index.php [QSA,L]

</IfModule>


---------------------------------------------------

----------appのhtaccess----------

<FilesMatch "^composer|^autoload|^cli-config|^COPYING|\.(ht|ini|lock|dist|git|sh)$">
order allow,deny
deny from all
</FilesMatch>

<Files ~ "index.php|index_dev.php">
order deny,allow
allow from all
</Files>

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /html/

RewriteRule ^user_data/(.*)$ /html/user_data/$1 [QSA,L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !^(.*)\.(gif|png|jpg|css|ico|js)$ [NC]
RewriteRule ^(.*)$ index.php [QSA,L]


</IfModule>


---------------------------------------------------

----------htmlフォルダのhtaccess----------

order deny,allow
allow from all
<IfModule mod_rewrite.c>
RewriteEngine On

# Authorization ヘッダが取得できない環境への対応
RewriteCond %{HTTP:Authorization} ^(.*)
RewriteRule ^(.*) - [E=HTTP_AUTHORIZATION:%1]

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !^(.*)\.(gif|png|jpe?g|css|ico|js|svg)$ [NC]
RewriteRule ^(.*)$ index.php [QSA,L]

</IfModule>


RewriteBase /html

---------------------------------------------------


----------app/config/eccube/path.yml----------

root: /html/
admin_dir: 管理ページのディレクトリ/
tpl: /html/user_data/packages/default/
admin_tpl: /html/user_data/packages/admin/
image_path: /html/upload/save_image/
root_dir: /home/初期ドメイン/www/お客様のrootディレクトリ
root_urlpath:
template_code: custom
admin_route: 管理ページのディレクトリ
user_data_route: user_data
public_path: /html
public_path_realdir: /home/初期ドメイン/www/お客様のrootディレクトリ/html
image_save_realdir: /home/初期ドメイン/www/お客様のrootディレクトリ/html/upload/save_image
image_temp_realdir: /home/初期ドメイン/www/お客様のrootディレクトリ/html/upload/temp_image
user_data_realdir: /home/初期ドメイン/www/お客様のrootディレクトリ/html/user_data
block_default_realdir: /home/初期ドメイン/www/お客様のrootディレクトリ/src/Eccube/Resource/template/default/Block
block_realdir: /home/初期ドメイン/www/お客様のrootディレクトリ/app/template/custom/Block
template_default_realdir: /home/初期ドメイン/www/お客様のrootディレクトリ/src/Eccube/Resource/template/default
template_default_html_realdir: /home/初期ドメイン/www/お客様のrootディレクトリ/html/template/default
template_admin_realdir: /home/初期ドメイン/www/お客様のrootディレクトリ/src/Eccube/Resource/template/admin
template_admin_html_realdir: /home/初期ドメイン/www/お客様のrootディレクトリ/html/template/admin
template_realdir: /home/初期ドメイン/www/お客様のrootディレクトリ/app/template/custom
template_html_realdir: /home/初期ドメイン/www/お客様のrootディレクトリ/html/template/custom
template_temp_realdir: /home/初期ドメイン/www/お客様のrootディレクトリ/app/cache/eccube/template
csv_temp_realdir: /home/初期ドメイン/www/お客様のrootディレクトリ/app/cache/eccube/csv
plugin_realdir: /home/初期ドメイン/www/お客様のrootディレクトリ/app/Plugin
plugin_temp_realdir: /home/初期ドメイン/www/お客様のrootディレクトリ/app/cache/plugin
plugin_html_realdir: /home/初期ドメイン/www/お客様のrootディレクトリ/html/plugin
admin_urlpath: /html/template/admin
front_urlpath: /html/template/custom
image_save_urlpath: /html/upload/save_image
image_temp_urlpath: /html/upload/temp_image
user_data_urlpath: /html/user_data
plugin_urlpath: /html/plugin

----------------------------------------------------



----------autoload.php----------

<?php

// システム要件チェック
if (version_compare(PHP_VERSION, '5.3.9') < 0) {
die('Your PHP installation is too old. EC-CUBE requires at least PHP 5.3.9. See the <a href="http://www.ec-cube.net/product/system.php">system requirements</a> page for more information.');
}

if (extension_loaded('wincache')) {
if (!ini_get('opcache.enable')) {
ini_set('wincache.ocenabled', 1);
}
ini_set('wincache.fcenabled', 1);
}

$autoload = __DIR__.'/vendor/autoload.php';

if (file_exists($autoload) && is_readable($autoload)) {
$loader = require $autoload;
} else {
die('Composer is not installed.');
}

// autoloader cache
if (extension_loaded('apc') && ini_get('apc.enabled')) {
$apcLoader = new Symfony\Component\ClassLoader\ApcClassLoader(sha1(__FILE__), $loader);
$apcLoader->register();
$loader->unregister();
} elseif (extension_loaded('wincache') && ini_get('wincache.fcenabled')) {
$winCacheLoader = new Symfony\Component\ClassLoader\WinCacheClassLoader(sha1(__FILE__), $loader);
$winCacheLoader->register();
$loader->unregister();
}

//[INFO]index.php,install.phpをEC-CUBEルート直下に移動させる場合は、コメントアウトしている行に置き換える
define("RELATIVE_PUBLIC_DIR_PATH", '');
//define("RELATIVE_PUBLIC_DIR_PATH", '/html');

return $loader;

468
投稿日時: 2017/2/6 1:22
対応状況: −−−
登録日: 2008/10/26
居住地:
投稿: 3217
Re: httpからhttpsへのリダイレクトが出来ない
この張り付けられている状態で、非SSL(http://)では正常に動作しているという事でしょうか?

SSL化対応というのは具体的にどのような作業をされていますか?
htaccessなどに変更を加えていますか?


----------------
株式会社シロハチ
■ECCUBE2系、3系構築カスタマイズご相談ください。
EC-CUBE3マニュアル
blog

anz
投稿日時: 2017/2/6 9:57
対応状況: −−−
半人前
登録日: 2016/10/12
居住地:
投稿: 16
Re: httpからhttpsへのリダイレクトが出来ない
私もまったく同じ状況で苦労しました。

さくらのSSL(SNI・ラピッド等)を使う場合、.htaccessでRewriteが使えないそうです。

私の場合はautoload.phpの最初に下記を追加することで解決しました。

===
if (isset($_SERVER['HTTP_X_SAKURA_FORWARDED_FOR'])) {
$_SERVER['HTTPS'] = 'on';
$_ENV['HTTPS'] = 'on';
$_SERVER['HTTP_HOST'] = 'ドメイン.jp';
$_SERVER['SERVER_NAME'] = 'ドメイン.jp';
$_ENV['HTTP_HOST'] = 'ドメイン.jp';
$_ENV['SERVER_NAME'] = 'ドメイン.jp';
}
===

ドツボっているようでしたら、お試しください。
zara
投稿日時: 2017/2/6 22:17
対応状況: −−−
新米
登録日: 2016/4/19
居住地: 鹿児島県
投稿: 9
Re: httpからhttpsへのリダイレクトが出来ない
468様、anz様、ありがとうございます。

返信が遅くなり申し訳ありません。


最初の段階で説明不足でした。

>この張り付けられている状態で、非SSL(http://)では正常に動作しているという事でしょうか?

最初の段階では普通に非SSL(http://)で正常に動作しています。

anz様よりありました「autoload.php」部分の追記もすでに最初の段階でためしており、何も変わらずでした。


今回のご相談では下記を試してみて、

http://xoops.ec-cube.net/modules/newbb/viewtopic.php?viewmode=thread&topic_id=18114&forum=2&post_id=78310#forumpost78310

全体のSSL化ができましたが、管理ページにアクセスしようとすると、サイトのトップページにアクセスしてしまい、また、手入力で入力すれば「https://○○○.com」でアクセスできますが、そうでない場合は「https://○○○.com/html/index.php」となり、導入当初にURLにhtmlを省く対策したものが解除され、プラスindex.phpまで付いてきてしまっています。

最悪全体のSSL化と管理ページにだけはアクセスできるようになればと思っております。

どうぞご教授宜しくお願いいたします。
anz
投稿日時: 2017/2/7 11:07
対応状況: −−−
半人前
登録日: 2016/10/12
居住地:
投稿: 16
Re: httpからhttpsへのリダイレクトが出来ない
私の知識では、新規でインストールする手順しかわかりません。個人的なメモですので見にくいかと存じますが、晒します。

★autoload.phpの最初に下記を追加
===
if (isset($_SERVER['HTTP_X_SAKURA_FORWARDED_FOR'])) {
$_SERVER['HTTPS'] = 'on';
$_ENV['HTTPS'] = 'on';
$_SERVER['HTTP_HOST'] = 'ドメイン.jp';
$_SERVER['SERVER_NAME'] = 'ドメイン.jp';
$_ENV['HTTP_HOST'] = 'ドメイン.jp';
$_ENV['SERVER_NAME'] = 'ドメイン.jp';
}
===

★さくらサーバーにEC-CUBEを展開する
※クイックインストールを使う場合は、ストア名が挿入されるため、排除する手順が必要
ex)https://ドメイン.jp/ディレクトリ名/html

★サーバーコントロールパネルより、ドメイン設定
ルートディレクトリを変更

//変更前
https://ドメイン.jp/

//変更後
https://ドメイン.jp/ディレクトリ名

★.htaccessの修正
ルートディレクトリを変更した場合、htmlフォルダの.htaccessを修正しないとエラーが出る。

=== htmlの.htaccess
SetEnvIf REDIRECT_HTTPS (.+) HTTPS=$1

order deny,allow
allow from all
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /html

# Authorization ヘッダが取得できない環境への対応
RewriteCond %{HTTP:Authorization} ^(.*)
RewriteRule ^(.*) - [E=HTTP_AUTHORIZATION:%1]

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !^(.*)\.(gif|png|jpe?g|css|ico|js|svg)$ [NC]
RewriteRule ^(.*)$ index.php [QSA,L]
</IfModule>
===

★https://ドメイン.jp/html/にアクセスしEC-CUBEをインストールする

★htmlフォルダをURLから消す準備
htmlフォルダの中身をEC-CUBEルートへ移動させる
.htaccessを修正する

=== htmlの.htaccess
SetEnvIf REDIRECT_HTTPS (.+) HTTPS=$1

order deny,allow
allow from all
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /

# Authorization ヘッダが取得できない環境への対応
RewriteCond %{HTTP:Authorization} ^(.*)
RewriteRule ^(.*) - [E=HTTP_AUTHORIZATION:%1]

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !^(.*)\.(gif|png|jpe?g|css|ico|js|svg)$ [NC]
RewriteRule ^(.*)$ index.php [QSA,L]
</IfModule>
===

★index.php、index_dev.php、autoload.phpを修正する(//の移動)

★path.ymlの修正
/app/config/eccube/path.yml
root_urlpath: /

https://ドメイン.jp、管理画面にアクセスし動作確認
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


EC-CUBE公式 Amazon Payプラグイン

統計情報

総メンバー数は88,291名です
総投稿数は109,691件です

投稿数ランキング

1
seasoft
7365
2
468
3217
3
AMUAMU
2712
4
nanasess
2303
5
umebius
2085
6
yuh
1818
7
h_tanaka
1610
8
red
1568
9
mcontact
1240
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
796
14 ramrun 789
15 karin 689
16 sumida 641
17
homan
633
18 DELIGHT 572
19
patapata
502
20
flealog
485


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.