質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
SSL

SSL(Secure Sockets Layer)とは、暗号化されたプロトコルで、インターネット上での通信セキュリティを提供しています。

CakePHP

CakePHPは、PHPで書かれたWebアプリケーション開発用のフレームワークです。 Ruby on Railsの考え方を多く取り入れており、Railsの高速性とPHPの機動性を兼ね備えています。 MVCやORMなどを「規約優先の考え方」で利用するため、コードを書く手間を省くことができます。 外部のライブラリに依存しないので、単体での利用が可能です。

VPS

VPS(バーチャル・プライベート・サーバ)は、仮想化されたサーバをレンタルするサービスで、共有サーバでありながら専門サーバと同等の機能を果たします。物理的な専門サーバより安価で提供できるメリットがあります。

Q&A

解決済

2回答

2875閲覧

さくらVPSでSSLを設置し、サイトにアクセスするとトップページ以外が404NotFoundになる

TADA

総合スコア7

SSL

SSL(Secure Sockets Layer)とは、暗号化されたプロトコルで、インターネット上での通信セキュリティを提供しています。

CakePHP

CakePHPは、PHPで書かれたWebアプリケーション開発用のフレームワークです。 Ruby on Railsの考え方を多く取り入れており、Railsの高速性とPHPの機動性を兼ね備えています。 MVCやORMなどを「規約優先の考え方」で利用するため、コードを書く手間を省くことができます。 外部のライブラリに依存しないので、単体での利用が可能です。

VPS

VPS(バーチャル・プライベート・サーバ)は、仮想化されたサーバをレンタルするサービスで、共有サーバでありながら専門サーバと同等の機能を果たします。物理的な専門サーバより安価で提供できるメリットがあります。

0グッド

0クリップ

投稿2015/11/19 08:05

初めて質問をします。失礼があったら申し訳ありません。

さくらインターネットのVPSにApache等をインストールし、cakephpで作成したサイトの運営を行っています。
今回SSLを導入することとなり、RapidSSLにて発行された証明書を設置しました。
(手順は こちらのサイトを参考にしました。)
SSLの申請を行ったドメインでの接続(ex. https://www.XXXXXXX.com/)ではSSL通信ができ、証明書の確認もできるのですが、
他の階層のURL
(ex. https://www.XXXXXXX.com/aaa
https://www.XXXXXXX.com/css/style.css
などの情報がすべて404NotFoundとなり表示することができません。
https://www.XXXXXXX.com/のトップページもcss/フォルダが読み込めないためレイアウトも崩れた状態となってしまいます。
同じプログラムは開発はXAMMP環境ですがここではhttpsでのアクセスでも問題なく表示されます。
さくらVPSの場合、何か特別な設定が必要でしょうか。
VPSの環境は
Apache/2.2.15 (Unix)
OpenSSL 1.0.1e-fips 11 Feb 2013
mod_ssl-2.2.15-47.el6.centos.x86_64
にて稼働し、cakephpは2.6.10のバージョンを利用しています。

よろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

1点確認させてください。

httpでアクセスした場合は、トップも他のページも正しく表示されますか?

投稿2015/11/19 08:53

kurosawa

総合スコア780

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kurosawa

2015/11/19 09:06

先に言ってしまうと、 参考にされてるサイトの手順では ssl.conf で 新たに DocumentRoot を設定されてます。 そこをシクルと質問されている状態になるのかなと。 もし http で正しく動作するならば、 ssl.conf では DocumentRoot をコメントアウトのままにすれば良いのかなぁと思いました。 検討違いであればすみません。
TADA

2015/11/19 11:16

ご回答ありがとうございます。 httpアクセスするときは、すべてのページが正しく表示されます。 ssl.conf の DocumentRootをコメントアウトすると、topページも表示されなくなってしまいました。 ご提案ありがとうございました
guest

0

ベストアンサー

Wordpress の「管理画面」→「設定」→「一般設定」
WordPress アドレス (URL)
サイトアドレス (URL)
で、http → https に変更してください。
オクセスできない場合は、MySQLのデータを直接触って、該当部分を変更してください。

投稿2015/11/19 08:12

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

TADA

2015/11/19 08:28

ご回答ありがとうございます。 今回の問題は、cakephpで作成したプログラムでの問題であり、wordpressは利用していません。 またhttpsでアクセスできない(httpにリダイレクトはされません。)のではなく、httpsでアクセスするとNotFoundになってしまうのです 同じURLをhttpでアクセスするとアクセスはできます。 何かお気づきのことがありましたら、よろしくお願いします。
退会済みユーザー

退会済みユーザー

2015/11/19 08:31

wordpressなんて一言も言及っされてませんでしたね…w マニよりもまずapache の ログを確認してください。そこから原因を探らない限り解決はできません。
TADA

2015/11/19 11:32

ご返信ありがとうございます。 https://www.XXXXXXX.com/css/style.css にアクセスしたときのssl_error.logを確認すると File does not exist: /var/www/html/css.style.css とlogが出力されておりました。 (http://www.XXXXXXX.com/css/style.css は表示できます) cakephpを利用しているため、確かに「/var/www/html/css」というフォルダはなく、実際は.htaccessで制御して「/var/www/html/app/webroot/css」のフォルダのstyle.cssが読み込まれるのが正しい動きになります。 つまり、.htaccessが効いてない、ということですね。。。 httpd.confを確認したところ、 <Directory "/var/www/html"> Options FollowSymLinks AllowOverride all </Directory> にはしていましたが、 <Directory /> Options FollowSymLinks AllowOverride none </Directory> になっていました。ここもAllに変更してApacheを再起動すると、httpsでも表示することができました! 解決の糸口を教えていただき、ありがとうございます。 logをみる癖をつけておかないといけないですね。 ありがとうございます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問