这是我的 httpd.conf 文件,我在此初稿中测试了没有任何虚拟主机的反向代理。
问题出在哪里?顺便说一下,SSL 工作正常,这不是问题。
#
# This configuration file reflects default settings for Apache HTTP Server.
#
# You may change these, but chances are that you may not need to.
#
#
# Timeout: The number of seconds before receives and sends time out.
#
Timeout 60
#
# KeepAlive: Whether or not to allow persistent connections (more than
# one request per connection). Set to "Off" to deactivate.
#
KeepAlive On
#
# MaxKeepAliveRequests: The maximum number of requests to allow
# during a persistent connection. Set to 0 to allow an unlimited amount.
# We recommend you leave this number high, for maximum performance.
#
MaxKeepAliveRequests 100
#
# KeepAliveTimeout: Number of seconds to wait for the next request from the
# same client on the same connection.
#
KeepAliveTimeout 5
#
# UseCanonicalName: Determines how Apache constructs self-referencing
# URLs and the SERVER_NAME and SERVER_PORT variables.
# When set "Off", Apache will use the Hostname and Port supplied
# by the client. When set "On", Apache will use the value of the
# ServerName directive.
#
UseCanonicalName Off
#
#h AccessFileName: The name of the file to look for in each directory
# for additional configuration directives. See also the AllowOverride
# directive.
#
AccessFileName .htaccess
#
# ServerTokens
# This directive configures what you return as the Server HTTP response
# Header. The default is 'Full' which sends information about the OS-Type
# and compiled in modules.
# Set to one of: Full | OS | Minor | Minimal | Major | Prod
# where Full conveys the most information, and Prod the least.
#
ServerTokens Full
#
# Optionally add a line containing the server version and virtual host
# name to server-generated pages (internal error documents, FTP directory
# listings, mod_status and mod_info output etc., but not CGI generated
# documents or custom error documents).
# Set to "EMail" to also include a mailto: link to the ServerAdmin.
# Set to one of: On | Off | EMail
#
ServerSignature On
#
# HostnameLookups: Log the names of clients or just their IP addresses
# e.g., www.apache.org (on) or 204.62.129.132 (off).
# The default is off because it'd be overall better for the net if people
# had to knowingly turn this feature on, since enabling it means that
# each client request will result in AT LEAST one lookup request to the
# nameserver.
#
HostnameLookups Off
Listen 443
SSLEngine On
# Set the path to SSL certificate
# Usage: SSLCertificateFile /path/to/cert.pem
SSLCertificateFile /etc/apache2/ssl/myserver.crt
SSLCertificateKeyFile /etc/apache2/ssl/myserver.key
SSLCertificateChainFile /etc/apache2/ssl/myserver_int.crt
ProxyPreserveHost On
ProxyPass / http://192.168.178.43/
ProxyPassReverse / http://192.168.178.43/
ServerName foo.com
#
# Set a timeout for how long the client may take to send the request header
# and body.
# The default for the headers is header=20-40,MinRate=500, which means wait
# for the first byte of headers for 20 seconds. If some data arrives,
# increase the timeout corresponding to a data rate of 500 bytes/s, but not
# above 40 seconds.
# The default for the request body is body=20,MinRate=500, which is the same
# but has no upper limit for the timeout.
# To disable, set to header=0 body=0
#
LoadModule authn_file_module libexec/mod_authn_file.so
#LoadModule authn_dbm_module libexec/mod_authn_dbm.so
#LoadModule authn_anon_module libexec/mod_authn_anon.so
#LoadModule authn_dbd_module libexec/mod_authn_dbd.so
#LoadModule authn_socache_module libexec/mod_authn_socache.so
LoadModule authn_core_module libexec/mod_authn_core.so
LoadModule authz_host_module libexec/mod_authz_host.so
LoadModule authz_groupfile_module libexec/mod_authz_groupfile.so
LoadModule authz_user_module libexec/mod_authz_user.so
#LoadModule authz_dbm_module libexec/mod_authz_dbm.so
#LoadModule authz_owner_module libexec/mod_authz_owner.so
#LoadModule authz_dbd_module libexec/mod_authz_dbd.so
LoadModule authz_core_module libexec/mod_authz_core.so
#LoadModule authnz_ldap_module libexec/mod_authnz_ldap.so
LoadModule access_compat_module libexec/mod_access_compat.so
LoadModule auth_basic_module libexec/mod_auth_basic.so
#LoadModule auth_form_module libexec/mod_auth_form.so
#LoadModule auth_digest_module libexec/mod_auth_digest.so
#LoadModule allowmethods_module libexec/mod_allowmethods.so
#LoadModule file_cache_module libexec/mod_file_cache.so
#LoadModule cache_module libexec/mod_cache.so
#LoadModule cache_disk_module libexec/mod_cache_disk.so
#LoadModule cache_socache_module libexec/mod_cache_socache.so
#LoadModule socache_shmcb_module libexec/mod_socache_shmcb.so
#LoadModule socache_dbm_module libexec/mod_socache_dbm.so
#LoadModule socache_memcache_module libexec/mod_socache_memcache.so
#LoadModule watchdog_module libexec/mod_watchdog.so
#LoadModule macro_module libexec/mod_macro.so
#LoadModule dbd_module libexec/mod_dbd.so
#LoadModule dumpio_module libexec/mod_dumpio.so
#LoadModule echo_module libexec/mod_echo.so
#LoadModule buffer_module libexec/mod_buffer.so
#LoadModule data_module libexec/mod_data.so
#LoadModule ratelimit_module libexec/mod_ratelimit.so
LoadModule reqtimeout_module libexec/mod_reqtimeout.so
#LoadModule ext_filter_module libexec/mod_ext_filter.so
#LoadModule request_module libexec/mod_request.so
#LoadModule include_module libexec/mod_include.so
LoadModule filter_module libexec/mod_filter.so
#LoadModule reflector_module libexec/mod_reflector.so
#LoadModule substitute_module libexec/mod_substitute.so
#LoadModule sed_module libexec/mod_sed.so
#LoadModule charset_lite_module libexec/mod_charset_lite.so
#LoadModule deflate_module libexec/mod_deflate.so
#LoadModule xml2enc_module libexec/mod_xml2enc.so
#LoadModule proxy_html_module libexec/mod_proxy_html.so
LoadModule mime_module libexec/mod_mime.so
#LoadModule ldap_module libexec/mod_ldap.so
LoadModule log_config_module libexec/mod_log_config.so
#LoadModule log_debug_module libexec/mod_log_debug.so
#LoadModule log_forensic_module libexec/mod_log_forensic.so
#LoadModule logio_module libexec/mod_logio.so
#LoadModule lua_module libexec/mod_lua.so
LoadModule env_module libexec/mod_env.so
#LoadModule mime_magic_module libexec/mod_mime_magic.so
#LoadModule expires_module libexec/mod_expires.so
LoadModule headers_module libexec/mod_headers.so
#LoadModule usertrack_module libexec/mod_usertrack.so
#LoadModule unique_id_module libexec/mod_unique_id.so
LoadModule setenvif_module libexec/mod_setenvif.so
LoadModule version_module libexec/mod_version.so
#LoadModule remoteip_module libexec/mod_remoteip.so
LoadModule proxy_module libexec/mod_proxy.so
#LoadModule proxy_connect_module libexec/mod_proxy_connect.so
#LoadModule proxy_ftp_module libexec/mod_proxy_ftp.so
LoadModule proxy_http_module libexec/mod_proxy_http.so
#LoadModule proxy_fcgi_module libexec/mod_proxy_fcgi.so
#LoadModule proxy_scgi_module libexec/mod_proxy_scgi.so
#LoadModule proxy_wstunnel_module libexec/mod_proxy_wstunnel.so
#LoadModule proxy_ajp_module libexec/mod_proxy_ajp.so
#LoadModule proxy_balancer_module libexec/mod_proxy_balancer.so
#LoadModule proxy_express_module libexec/mod_proxy_express.so
#LoadModule session_module libexec/mod_session.so
#LoadModule session_cookie_module libexec/mod_session_cookie.so
#LoadModule session_dbd_module libexec/mod_session_dbd.so
LoadModule slotmem_shm_module libexec/mod_slotmem_shm.so
#LoadModule slotmem_plain_module libexec/mod_slotmem_plain.so
LoadModule ssl_module libexec/mod_ssl.so
#LoadModule dialup_module libexec/mod_dialup.so
#LoadModule lbmethod_byrequests_module libexec/mod_lbmethod_byrequests.so
#LoadModule lbmethod_bytraffic_module libexec/mod_lbmethod_bytraffic.so
#LoadModule lbmethod_bybusyness_module libexec/mod_lbmethod_bybusyness.so
#LoadModule lbmethod_heartbeat_module libexec/mod_lbmethod_heartbeat.so
<IfDefine prefork>
LoadModule mpm_prefork_module libexec/mod_mpm_prefork.so
</IfDefine>
<IfDefine worker>
LoadModule mpm_worker_module libexec/mod_mpm_worker.so
</IfDefine>
<IfDefine !prefork>
<IfDefine !worker>
LoadModule mpm_event_module libexec/mod_mpm_event.so
</IfDefine>
</IfDefine>
LoadModule unixd_module libexec/mod_unixd.so
#LoadModule heartbeat_module libexec/mod_heartbeat.so
#LoadModule heartmonitor_module libexec/mod_heartmonitor.so
#LoadModule dav_module libexec/mod_dav.so
LoadModule status_module libexec/mod_status.so
LoadModule autoindex_module libexec/mod_autoindex.so
#LoadModule asis_module libexec/mod_asis.so
#LoadModule info_module libexec/mod_info.so
#LoadModule suexec_module libexec/mod_suexec.so
<IfDefine !prefork>
#LoadModule cgid_module libexec/mod_cgid.so
</IfDefine>
<IfDefine prefork>
#LoadModule cgi_module libexec/mod_cgi.so
</IfDefine>
#LoadModule dav_fs_module libexec/mod_dav_fs.so
#LoadModule dav_lock_module libexec/mod_dav_lock.so
#LoadModule vhost_alias_module libexec/mod_vhost_alias.so
#LoadModule negotiation_module libexec/mod_negotiation.so
LoadModule dir_module libexec/mod_dir.so
#LoadModule actions_module libexec/mod_actions.so
#LoadModule speling_module libexec/mod_speling.so
#LoadModule userdir_module libexec/mod_userdir.so
LoadModule alias_module libexec/mod_alias.so
#LoadModule rewrite_module libexec/mod_rewrite.so
<IfModule unixd_module>
#
# If you wish httpd to run as a different user or group, you must run
# httpd as root initially and it will switch.
#
# User/Group: The name (or #number) of the user/group to run httpd as.
# It is usually good practice to create a dedicated user and group for
# running httpd, as with most system services.
#
User webservd
Group webservd
</IfModule>
<IfModule reqtimeout_module>
RequestReadTimeout header=20-40,MinRate=500 body=20,MinRate=500
</IfModule>
Curl 给出了这个结果。
curl https://192.168.178.47 --insecure
curl: (56) SSLRead() return error -9806
错误日志:
[Sun Jul 01 15:26:36.254621 2018] [ssl:warn] [pid 6643:tid 1] AH01873: Init: Session Cache is not configured [hint: SSLSessionCache]
[Sun Jul 01 15:26:36.263094 2018] [mpm_event:notice] [pid 6643:tid 1] AH00489: Apache/2.4.12 (Unix) OpenSSL/1.0.1p configured -- resuming normal operations
[Sun Jul 01 15:26:36.263518 2018] [core:notice] [pid 6643:tid 1] AH00094: Command line: '/usr/apache2/2.4/bin/httpd'
[Sun Jul 01 15:29:23.278759 2018] [core:notice] [pid 6643:tid 1] AH00052: child pid 6646 exit signal Segmentation fault (11)
[Sun Jul 01 15:29:23.279227 2018] [core:notice] [pid 6643:tid 1] AH00052: child pid 6645 exit signal Segmentation fault (11)
[Sun Jul 01 15:29:32.284645 2018] [core:notice] [pid 6643:tid 1] AH00052: child pid 6644 exit signal Segmentation fault (11)