openstack安裝時檢測apache無法啓動

    在安裝openstack kilo版本時有一步檢測apache無法啓動,搜遍了google沒有搜到相關信息只好自己動手了,我用的是CentOS-7-x86_64位系統,報錯信息如下:

一、

ERROR : Error appeared during Puppet run: 192.168.209.143_horizon.pp

Error: Could not start Service[httpd]: Execution of '/usr/bin/systemctl start httpd' returned 1: Job for httpd.service failed because the control process exited with error code. See "systemctl status httpd.service" and "journalctl -xe" for details.


按照提示信息執行了一下"journalctl -xe",其中找到了以下信息:


Dec 29 11:06:33 controller httpd[29959]: AH00526: Syntax error on line 11 of /etc/httpd/conf.d/fcgid.conf:

Dec 29 11:06:33 controller httpd[29959]: Invalid command 'FcgidIPCDir', perhaps misspelled or defined by a module not included in the server configuration

Dec 29 11:06:33 controller systemd[1]: httpd.service: main process exited, code=exited, status=1/FAILURE

Dec 29 11:06:33 controller kill[29963]: kill: cannot find process ""

Dec 29 11:06:33 controller systemd[1]: httpd.service: control process exited, code=exited status=1

Dec 29 11:06:33 controller systemd[1]: Failed to start The Apache HTTP Server.


其中兩段紅色英文字體提示/etc/httpd/conf.d/fcgid.conf 這個文件有無效的命令Invalid command 'FcgidIPCDir',有可能是拼寫錯誤也有可能是模塊未加載導致,看文件全部信息如下:


[root@controller ~]# cat  /etc/httpd/conf.d/fcgid.conf

# This is the Apache server configuration file for providing FastCGI support

# through mod_fcgid

#

# Documentation is available at

# http://httpd.apache.org/mod_fcgid/mod/mod_fcgid.html


# Use FastCGI to process .fcg .fcgi & .fpl scripts

AddHandler fcgid-script fcg fcgi fpl


# Sane place to put sockets and shared memory file

FcgidIPCDir /run/mod_fcgid

FcgidProcessTableFile /run/mod_fcgid/fcgid_shm


這是一個調用mod_fcgid模塊並提供FastCGI 的apache server的配置文件,一看文件中確實沒有加載mod_fcgid模塊,


所以在文件中加載該模塊

    LoadModule fcgid_module modules/mod_fcgid.so


完整文件如下:

fcgid.conf


# This is the Apache server configuration file for providing FastCGI support

# through mod_fcgid

#

# Documentation is available at

# http://httpd.apache.org/mod_fcgid/mod/mod_fcgid.html

LoadModule fcgid_module modules/mod_fcgid.so

# Use FastCGI to process .fcg .fcgi & .fpl scripts

AddHandler fcgid-script fcg fcgi fpl

# Sane place to put sockets and shared memory file

FcgidIPCDir /var/run/mod_fcgid

FcgidProcessTableFile /var/run/mod_fcgid/fcgid_shm


在啓動一下

[root@controller ~]# apachectl start

[root@controller ~]# apachectl status

* httpd.service - The Apache HTTP Server

   Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; vendor preset: disabled)

  Drop-In: /usr/lib/systemd/system/httpd.service.d

           `-openstack-dashboard.conf

   Active: active (running) since Fri 2016-12-30 16:45:48 CST; 6s ago

     Docs: man:httpd(8)



二、Invalid command 'SSLPassPhraseDialog', perhaps misspelled or ...tion


[root@controller ~]# systemctl status httpd.service 

● httpd.service - The Apache HTTP Server

   Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; vendor preset: disabled)

  Drop-In: /usr/lib/systemd/system/httpd.service.d

           └─openstack-dashboard.conf

   Active: failed (Result: exit-code) since Tue 2017-01-17 06:07:41 CST; 7min ago

     Docs: man:httpd(8)

           man:apachectl(8)

  Process: 16002 ExecStop=/bin/kill -WINCH ${MAINPID} (code=exited, status=1/FAILURE)

  Process: 16000 ExecStart=/usr/sbin/httpd $OPTIONS -DFOREGROUND (code=exited, status=1/FAILURE)

  Process: 15956 ExecStartPre=/usr/bin/python /usr/share/openstack-dashboard/manage.py compress --force (code=exited, status=0/SUCCESS)

  Process: 15937 ExecStartPre=/usr/bin/python /usr/share/openstack-dashboard/manage.py collectstatic --noinput --clear (code=exited, status=0/SUCCESS)

 Main PID: 16000 (code=exited, status=1/FAILURE)


Jan 17 06:07:41 controller.example.com python[15956]: Compressing... done

Jan 17 06:07:41 controller.example.com python[15956]: Compressed 5 block(s) from 3 template(s) for 1 context(s).

Jan 17 06:07:41 controller.example.com httpd[16000]: AH00526: Syntax error on line 18 of /etc/httpd/conf.d/ssl.conf:

Jan 17 06:07:41 controller.example.com httpd[16000]: Invalid command 'SSLPassPhraseDialog', perhaps misspelled or ...tion

Jan 17 06:07:41 controller.example.com systemd[1]: httpd.service: main process exited, code=exited, status=1/FAILURE

Jan 17 06:07:41 controller.example.com kill[16002]: kill: cannot find process ""

Jan 17 06:07:41 controller.example.com systemd[1]: httpd.service: control process exited, code=exited status=1

Jan 17 06:07:41 controller.example.com systemd[1]: Failed to start The Apache HTTP Server.

Jan 17 06:07:41 controller.example.com systemd[1]: Unit httpd.service entered failed state.

Jan 17 06:07:41 controller.example.com systemd[1]: httpd.service failed.

Hint: Some lines were ellipsized, use -l to show in full.


openstack安裝horizon時修改了http的配置文件,其中沒有加載“conf.modules.d/*.conf”,

所以在/etc/httpd/conf/httpd.conf 中加載即可;


# echo 'Include conf.modules.d/*.conf' >> /etc/httpd/conf/httpd.conf



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章