- ベストアンサー
httpdのSSLRequireSSLエラー
- httpdのSSLRequireSSLエラーの原因と解消方法について教えてください。
- CentOS5.8上で最新のhttpd(Apache HTTP Server)2.2.23をRPMパッケージ化してインストールし、httpd.confをリネームした後に実行したservice httpd configtestでSyntax errorが発生しています。解決方法を教えてください。
- エラーメッセージ「Invalid command 'SSLRequireSSL', perhaps misspelled or defined by a module not included in the server configuration」が表示されるhttpdのSSLRequireSSLエラーについて教えてください。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
yum install mod_ssl は、確認しているのではなく、 mod_sslをインストールしちゃってるって指摘は別のとこからあった通りですが インストールはされたけど、有効にしているかは別の問題。 httpd.confあるいはその中でIncludeしている他の設定ファイルで、 LoadModuleされていますか? もし、ClearModuleListしているなら、AddModuleもされていますか?
その他の回答 (4)
- wingstar
- ベストアンサー率37% (102/275)
どういうふうにhttpdのrpmを作ったのでしょうか。 付属されているspecファイルを利用して? specファイルは自作? specファイルをどこかからパクって利用した? いろいろあると思いますが。 あと、rpmを作った時、mod_sslも出来なかったですか? 出来ていれば、それをインストールするだけで済んだと思いますが。 下に書いてあるのを見る限り、mod_sslが入ってないように見えます。 というか、確認のためにyum installはないんじゃない? 普通はrpm -q mod_sslとかでインストールされているかどうか確認するんじゃないですか? そもそも、情報が小出し過ぎて、よくわかりません。 事細かに、どんな状況なのか、示してください。
お礼
いろいろと教えていただきまして、 ありがとうございました。
補足
お世話になります。 私はLinux(CentOS5.8)で、 今回初めてネットで随時調べながら 開発環境を構築中の初心者です。 いろいろと、とんちんかんな ご質問の仕方をしてしまっているようで すみません。 以下より1つずつ、ご回答させていただきますが、 補足と致しまして、 現状、以下2つは、すでにインストール済です。 ・Java JDK 1.7.0_07(SE 7 Update7)を、 rpm -Uvh jdk-7u7-linux-i586.rpm等でインストール済。 ・Apache Tomcat 7.0.30.0を、 [root@www binary]# tar zxvf apache-tomcat-7.0.30.tar.gz [root@www binary]# mv apache-tomcat-7.0.30/ /usr/local/tomcat 等して、各環境ファイルをネットで調べた通りに設定してインストール済。 (1) >>どういうふうにhttpdのrpmを作ったのでしょうか。 付属されているspecファイルを利用して? specファイルは自作? specファイルをどこかからパクって利用した? いろいろあると思いますが。 ●最新httpdバージョンをダウンロードする為、 wget http://www.meisei-u.ac.jp/mirror/apache/dist/httpd/httpd-2.2.23.tar.gz を実施して、 ↓ tar zxf httpd-2.2.23.tar.gz で展開して、出来たディレクトリ内のhttpd.specファイルを/usr/src/redhat/SPECS/配下に コピーして、 ↓ # sed -i -e 's/1.4.2/1.2.7/g' - e 's/1.3.10/1.2.7/g' /usr/src/redhat/SPECS/httpd.spec で編集しました。 ※(ご質問に対しての、ご回答は上記までとなりますが、 続けて補足と致しまして、 どのように現在に至ったかを以下に継続して記述致しておきます) ↓ # cp httpd-2.2.23.tar.gz /usr/src/redhat/SOURCES/ でコピーして、 ↓ rpmbuild -bb /usr/src/redhat/SPECS/httpd.spec でrpmパッケージ作成して、 ↓ # rpm -Uvh httpd-2.2.23-1.i386.rpm でアップグレードして、 ↓ # rpm -Uvh httpd-devel-2.2.23-1.i386.rpm # rpm -Uvh httpd-manual-2.2.23-1.i386.rpm も、それぞれアップグレードして、 ↓ /etc/init.d/httpdファイル内の文字列である、 ”/var/log/httpd”を、”/var/run”に、 KEDITエディタを利用して変更して保存して、 ↓ # cp /etc/httpd/conf/httpd.conf.rpmsave /etc/httpd/conf/httpd.conf で、 /etc/httpd/conf/配下にバックアップとして作成されていた httpd.conf.rpmsaveを、httpd.confとして移動しました。 ↓ その後に、 # service httpd configtest を実行したところ、 今回ご質問させていただいております内容の エラーが発生しております。 (2) >>あと、rpmを作った時、mod_sslも出来なかったですか? 出来ていれば、それをインストールするだけで済んだと思いますが。 下に書いてあるのを見る限り、mod_sslが入ってないように見えます。 というか、確認のためにyum installはないんじゃない? 普通はrpm -q mod_sslとかでインストールされているかどうか確認するんじゃないですか? ●ご指摘いただきまして、ありがとうございます。 教えていただきましたように、rpm -q mod_sslをさっそく実施した結果、 mod_ssl-2.2.23-1 と表示されております。 (3) >>そもそも、情報が小出し過ぎて、よくわかりません。 事細かに、どんな状況なのか、示してください。 ●私の経験不足で、どのような情報をお出しすればよいのか? わかっていない状況ですので、 お手数ですが、 「これこれの情報を出して!」 など教えをいただけましたら幸いです。 以上になります。どうぞよろしくお願いします。
- lowrider_2005
- ベストアンサー率40% (1520/3748)
「SSLRequireSSL」は指定したディレクトリ以下のアクセスをhttpsに限定しますから、mod_sslが入ってない(または有効になっていない)とかではないですか? もしそうなら、mod_sslパッケージを入れるか、webdav.confの9行目をコメントアウトですかね。 そもそもなぜソースからパッケージ化したのかわかりませんが、現在ミラーサイトにあがっているRPMのバーションは2.2.3です。そのまま純正RPMを使えば良いのでは?
お礼
ご回答をいただきまして、 ありがとうございました。
補足
お世話になります。 >>そもそもなぜソースからパッケージ化したのかわかりませんが、現在ミラーサイトにあがっているRPMのバーションは2.2.3です。そのまま純正RPMを使えば良いのでは? ●上記へのご回答になりますけれども、 httpdの古いバージョン2.2.3ではなくて、 httpdの最新バージョン2.2.23を利用する必要がございまして、 しかも、今後の運用も検討した結果、 make installで直接ソースからはインストールしたくなかった為、 (後でアンインストールする際に、相当手間がかかるとネットで調べた際に、 多く記述があった為・・・) やむを得ず、RPMパッケージを作って、現在インストールの途中で、 今回のエラーが出ていました。 なお、セキュリティ上、 webdav.confの9行目「SSLRequireSSL」は、削除出来ない環境の為、 その行を残した上で、このエラーを解消したいです。 以上になります。よろしくお願いします。
- satomi3951
- ベストアンサー率71% (98/137)
mod_sslは有効になってる?
お礼
ご回答をいただきまして、 ありがとうございました。
補足
お世話になります。 教えていただきましたように、 試しに、以下をシェル上から実行して、 その結果も含めて、以下添付しました。 この結果としましては、mod_sslは無効になっているのでしょうか? 以上、よろしくお願いします。 [root@www ~]# yum install mod_ssl Loaded plugins: downloadonly, fastestmirror, priorities Loading mirror speeds from cached hostfile * base: ftp.nara.wide.ad.jp * centosplus: ftp.nara.wide.ad.jp * extras: ftp.iij.ad.jp * updates: ftp.nara.wide.ad.jp base | 1.1 kB 00:00 centosplus | 1.9 kB 00:00 extras | 1.9 kB 00:00 updates | 1.9 kB 00:00 updates/primary_db | 768 kB 00:00 Setting up Install Process Resolving Dependencies --> Running transaction check ---> Package mod_ssl.i386 1:2.2.3-65.el5.centos set to be updated --> Processing Dependency: httpd = 2.2.3-65.el5.centos for package: mod_ssl --> Finished Dependency Resolution 1:mod_ssl-2.2.3-65.el5.centos.i386 from updates has depsolving problems --> Missing Dependency: httpd = 2.2.3-65.el5.centos is needed by package 1:mod_ssl-2.2.3-65.el5.centos.i386 (updates) Error: Missing Dependency: httpd = 2.2.3-65.el5.centos is needed by package 1:mod_ssl-2.2.3-65.el5.centos.i386 (updates) You could try using --skip-broken to work around the problem You could try running: package-cleanup --problems package-cleanup --dupes rpm -Va --nofiles --nodigest [root@www ~]#
- wpwpwpw
- ベストアンサー率38% (57/148)
webdav.confの9行目が何のか分かりませんが httpd.confでdavモジュールは有効になっていますか?
お礼
ご回答をいただきまして、 ありがとうございました。
補足
お世話になります。 >>webdav.confの9行目が何のか分かりませんが ●これは、 DAV Onの次行の、 SSLRequireSSLでした。 >>httpd.confでdavモジュールは有効になっていますか? ●LoadModuleで、「mod_dav」と「mod_dav_fs」という2つのモジュールが 有効になっている(コメントには、なっていない)ところまでは確認しました。 以上になります。 よろしくお願いします。
お礼
すみません。 補足を追加しましたが、 以下内容を間違っておりました。 LoadModule cgi_module modules/mod_cgi.so 正しくは、 LoadModule ssl_module modules/mod_ssl.so でした。 お詫びして訂正いたします。 PS: 補足の削除や修正方法がわかりませんでしたので、 このお礼入力を利用して、 補足の訂正をさせていただきました。 よろしくお願いします。
補足
お世話になっております。 /etc/httpd/confディレクトリ内の、httpd.confファイル内で、 LoadModuleしているかを見たところ、 ↓ LoadModule dav_module modules/mod_dav.so LoadModule dav_fs_module modules/mod_dav_fs.so 等は存在していましたが、 mod_sslの記述が見当たらなかった為、 試しに仮に、 LoadModule cgi_module modules/mod_cgi.so として、試しに1行追加してから、 service httpd configtest を実行したところ、 Syntax OK が表示されました。 (でも以前は、上記1行追加したような内容が 存在していなくてもSSLで利用出来ておりましたので、 他にエラー原因があるような気が、 まだしているのですが、 上記1行追加という対処方法で、 よろしかったでしょうか? もし間違った対処方法でしたら、ぜひご指摘願います) PS: 上記で仮にエラー解消したので、 試しに、各サービス(mysqld、httpd、tomcat)をSTARTし、 動作確認をいろいろ試してみた結果、 Tomcat7のTomcat Managerは正常に動作していて、 無事にログイン出来ていますが、 別の問題として、 既存の古いバージョンであるphpMyAdmin3.4.10.1 (なお補足と致しまして、既存の古いバージョンである PHP 5.3.10 (cli) 、 mysql Ver 14.14 Distrib 5.5.21, for Linux (i686) using readline 5.1 はインストール済で、これまで正常に利用してきておりました) のログイン画面にアクセスしようとすると、 接続出来ないという、また別のエラーが出るようになっていました。 (今回のhttpdをインストールするまでは、 正常にログイン画面が表示されていて、ログイン出来ていました) よくわかりませんが、 SSLの設定が出来ていないのでしょうか? (今回、既存の古いシステムを、 私が初めてLinuxで各バージョンアップしながら、 環境構築中なんですけれども、 いろいろと問題が出てくるものなんですね・・・) 以上になります。 もしよろしかったらアドバイス等いただけましたら幸いです。 よろしくお願いします。