WAMP Virtualhost not working with Laravel instance - apache

I'm working on a Laravel project locally using WAMP 3.1.0 and everything was working correctly until there was a windows update today.
When I go to my project I get an error page
I followed this post WAMP Virtual Host not working but that didn't solve my problem.
I've edited my C:\Windows\System32\drivers\etc\hosts file in admin mode which looks like this:
127.0.0.1 localhost
::1 localhost
127.0.0.1 test.dev
::1 test.dev
127.0.0.1 shoppingcart.dev
::1 shoppingcart.dev
127.0.0.1 gitproject.dev
::1 gitproject.dev
I've also edited my C:\wamp64\bin\apache\apache2.4.27\conf\extra\httpd-vhosts.conf file which looks like this:
# Virtual Hosts
#
<VirtualHost *:80>
ServerName localhost
DocumentRoot "${INSTALL_DIR}/www"
</VirtualHost>
<VirtualHost *:80>
ServerName test.dev
#ServerAlias localhost
DocumentRoot "${INSTALL_DIR}/www/test/public"
ErrorLog "logs/localhost-error.log"
CustomLog "logs/localhost-access.log" common
<Directory "${INSTALL_DIR}/www/test/public">
Options +Indexes +Includes +FollowSymLinks +MultiViews
AllowOverride All
Require local
</Directory>
</VirtualHost>
<VirtualHost *:80>
ServerName shoppingcart.dev
#ServerAlias localhost
DocumentRoot "${INSTALL_DIR}/www/shoppingcart/public"
#<Directory "${INSTALL_DIR}/www/">
# Options +Indexes +Includes +FollowSymLinks +MultiViews
# AllowOverride All
# Require local
#</Directory>
</VirtualHost>
<VirtualHost *:80>
ServerName gitproject.dev
#ServerAlias localhost
DocumentRoot "${INSTALL_DIR}/www/git_project/public"
#<Directory "${INSTALL_DIR}/www/">
# Options +Indexes +Includes +FollowSymLinks +MultiViews
# AllowOverride All
# Require local
#</Directory>
</VirtualHost>
When I visit my page like this http://localhost/test/public/order/23456 my page loads but when I try http://test.dev/order/23456 it doesn't.
I'm using apache 2.4.27
Can anyone tell me what's going on?
Also, this is my C:\wamp64\bin\apache\apache2.4.27\conf\httpd.conf file :
ServerSignature On
ServerTokens Full
Define APACHE24 Apache2.4
Define VERSION_APACHE 2.4.27
Define INSTALL_DIR c:/wamp64
Define APACHE_DIR ${INSTALL_DIR}/bin/apache/apache${VERSION_APACHE}
ServerRoot "${APACHE_DIR}"
Listen 0.0.0.0:80
Listen [::0]:80
LoadModule access_compat_module modules/mod_access_compat.so
LoadModule actions_module modules/mod_actions.so
LoadModule alias_module modules/mod_alias.so
LoadModule allowmethods_module modules/mod_allowmethods.so
LoadModule asis_module modules/mod_asis.so
LoadModule auth_basic_module modules/mod_auth_basic.so
LoadModule auth_digest_module modules/mod_auth_digest.so
LoadModule authn_core_module modules/mod_authn_core.so
LoadModule authn_file_module modules/mod_authn_file.so
LoadModule authz_core_module modules/mod_authz_core.so
LoadModule authz_groupfile_module modules/mod_authz_groupfile.so
LoadModule authz_host_module modules/mod_authz_host.so
LoadModule authz_user_module modules/mod_authz_user.so
LoadModule autoindex_module modules/mod_autoindex.so
LoadModule cache_module modules/mod_cache.so
LoadModule cache_disk_module modules/mod_cache_disk.so
LoadModule cgi_module modules/mod_cgi.so
LoadModule dir_module modules/mod_dir.so
LoadModule env_module modules/mod_env.so
LoadModule file_cache_module modules/mod_file_cache.so
LoadModule include_module modules/mod_include.so
LoadModule isapi_module modules/mod_isapi.so
LoadModule log_config_module modules/mod_log_config.so
LoadModule mime_module modules/mod_mime.so
LoadModule negotiation_module modules/mod_negotiation.so
LoadModule rewrite_module modules/mod_rewrite.so
LoadModule setenvif_module modules/mod_setenvif.so
LoadModule userdir_module modules/mod_userdir.so
LoadModule vhost_alias_module modules/mod_vhost_alias.so
LoadModule php5_module "${INSTALL_DIR}/bin/php/php5.6.31/php5apache2_4.dll"
<IfModule unixd_module>
User daemon
Group daemon
</IfModule>
ServerAdmin wampserver#wampserver.invalid
ServerName localhost:80
<Directory />
AllowOverride none
Require all denied
</Directory>
HostnameLookups Off
DocumentRoot "${INSTALL_DIR}/www"
<Directory "${INSTALL_DIR}/www/">
Options +Indexes +FollowSymLinks +Multiviews
AllowOverride all
Require local
</Directory>
<IfModule dir_module>
DirectoryIndex index.php index.php3 index.html index.htm
</IfModule>
<Files ".ht*">
Require all denied
</Files>
ErrorLog "${INSTALL_DIR}/logs/apache_error.log"
LogLevel warn
<IfModule log_config_module>
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %b" common
<IfModule logio_module>
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio
</IfModule>
CustomLog "${INSTALL_DIR}/logs/access.log" common
</IfModule>
<IfModule alias_module>
ScriptAlias /cgi-bin/ "${INSTALL_DIR}/cgi-bin/"
</IfModule>
<IfModule cgid_module>
</IfModule>
<Directory "${INSTALL_DIR}/cgi-bin">
AllowOverride None
Options None
Require all granted
</Directory>
<IfModule headers_module>
RequestHeader unset Proxy early
</IfModule>
<IfModule mime_module>
TypesConfig conf/mime.types
AddEncoding x-compress .Z
AddEncoding x-gzip .gz .tgz
AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
AddType application/x-httpd-php .php
AddType application/x-httpd-php .php3
</IfModule>
EnableSendfile off
AcceptFilter http none
AcceptFilter https none
Include conf/extra/httpd-autoindex.conf
Include conf/extra/httpd-vhosts.conf
<IfModule proxy_html_module>
Include conf/extra/proxy-html.conf
</IfModule>
<IfModule ssl_module>
SSLRandomSeed startup builtin
SSLRandomSeed connect builtin
</IfModule>
Include "${INSTALL_DIR}/alias/*"

The first thing you should know is that the .dev tLD is now a real tLD and has been bought by Google. So as of Chrome 63 (out since December 2017), Chrome itself will force all domains ending on .dev (and .foo) to be redirected to HTTPS via a preloaded HTTP Strict Transport Security (HSTS) header.
So we should all stop using .dev and use something else, suggestions are to use .localhost or .test.
A simple test for this would be to try using FireFox or IE instead of Chrome to access your current configured site. If it runs in another browser, some of your problem is related to the Chrome changes that redirect .dev domains automatically.
Secondly, your Virtual Host definitions are not good. For some time now in WAMPServer there has been a tool provided within WAMPServer to help you create Virtual Hosts easily and correctly. Look at the WAMPSever homepage under the Tools menu for a link called Add Virtual Host (see below).
All you need to do is first create the folder that you want the site to live in before running the "Add Virtual Host" tool.
I suggest you revert your httpd-vhosts.conf file back to its initial state which contains only a definition for localhost
#
# Virtual Hosts
#
<VirtualHost *:80>
ServerAdmin admin#example.com
ServerName localhost
DocumentRoot "${INSTALL_DIR}/www"
<Directory "${INSTALL_DIR}/www/">
Options +Indexes +FollowSymLinks +MultiViews
AllowOverride All
Require local
</Directory>
</VirtualHost>
And then using the "Add Virtual Host" menu, create your Virtual Hosts again, but this time using paycafe.localhost for example.

Related

Apache 2.4 Unable to recognize additional site - 404 error

Background: I am running Apache 2.4.25 on RHEL 7. An existing web site has existed for years, and now I am wanting to add an additional unrelated web site running Angular.
Primary issue: No matter what I do, I am unable to route traffic to the new web site.
Expected behavior: Existing site continues to function on 8443, and the new site functions on 10443.
Actual behavior: Existing site listens on 8443 and 10443, but new site returns a 404 on both.
File system locations:
Apache server: /opt/intapache/
Existing (functional) site: /opt/cspgateway/
New (non-functional) site: /opt/intapache/htdocs/ (Note: index.html in this directory is set to 755 file access)
Current files: http.conf points to a second conf
httpd.conf:
ServerRoot "/opt/intapache/"
Listen 8443
LoadModule authn_file_module modules/mod_authn_file.so
LoadModule authn_core_module modules/mod_authn_core.so
LoadModule authz_host_module modules/mod_authz_host.so
LoadModule authz_groupfile_module modules/mod_authz_groupfile.so
LoadModule authz_user_module modules/mod_authz_user.so
LoadModule authz_core_module modules/mod_authz_core.so
LoadModule access_compat_module modules/mod_access_compat.so
LoadModule auth_basic_module modules/mod_auth_basic.so
LoadModule socache_shmcb_module modules/mod_socache_shmcb.so
LoadModule socache_dbm_module modules/mod_socache_dbm.so
LoadModule socache_memcache_module modules/mod_socache_memcache.so
LoadModule reqtimeout_module modules/mod_reqtimeout.so
LoadModule filter_module modules/mod_filter.so
LoadModule mime_module modules/mod_mime.so
LoadModule log_config_module modules/mod_log_config.so
LoadModule env_module modules/mod_env.so
LoadModule headers_module modules/mod_headers.so
LoadModule setenvif_module modules/mod_setenvif.so
LoadModule version_module modules/mod_version.so
LoadModule ssl_module modules/mod_ssl.so
LoadModule unixd_module modules/mod_unixd.so
LoadModule status_module modules/mod_status.so
LoadModule autoindex_module modules/mod_autoindex.so
LoadModule dir_module modules/mod_dir.so
LoadModule alias_module modules/mod_alias.so
<IfModule unixd_module>
User cachedb
Group cachedb
</IfModule>
ServerAdmin you#example.com
ServerName example.com
<Directory />
AllowOverride none
Require all denied
</Directory>
DocumentRoot "/opt/cspgateway/csp"
<Directory "/opt/cspgateway/csp">
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
<IfModule dir_module>
DirectoryIndex index.html
</IfModule>
<Files ".ht*">
Require all denied
</Files>
ErrorLog "logs/error_log"
LogLevel warn
<IfModule log_config_module>
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %b" common
<IfModule logio_module>
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio
</IfModule>
CustomLog "logs/access_log" common
</IfModule>
<IfModule alias_module>
ScriptAlias /cgi-bin/ "/opt/intapache//cgi-bin/"
</IfModule>
<IfModule cgid_module>
</IfModule>
<Directory "/opt/intapache/cgi-bin">
AllowOverride None
Options None
Require all granted
</Directory>
<IfModule headers_module>
RequestHeader unset Proxy early
</IfModule>
<IfModule mime_module>
TypesConfig conf/mime.types
AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
</IfModule>
<IfModule proxy_html_module>
Include conf/extra/proxy-html.conf
</IfModule>
<IfModule ssl_module>
SSLRandomSeed startup builtin
SSLRandomSeed connect builtin
</IfModule>
Include conf/extra/cspgateway.conf
cspgateway.conf
<VirtualHost *:8443>
DocumentRoot /opt/cspgateway/csp
ServerName example.com
SSLEngine on
SSLCertificateFile "/opt/example.crt"
SSLCertificateKeyFile "/opt/example.key"
SSLCertificateChainFile "/opt/chaincert.crt"
SSLProtocol All -SSLv2 -SSLv3 +TLSv1.2
</VirtualHost>
Listen 10443
<VirtualHost *:10443>
DocumentRoot /opt/intapache/htdocs
ServerName example.com
SSLEngine on
SSLCertificateFile "/opt/example.crt"
SSLCertificateKeyFile "/opt/example.key"
SSLCertificateChainFile "/opt/chaincert.crt"
SSLProtocol All -SSLv2 -SSLv3 +TLSv1.2
<Directory "/opt/intapache/htdocs">
AllowOverride None
Options Indexes FollowSymLinks
Require all granted
</Directory>
</VirtualHost>
LoadModule csp_module_sa /opt/cspgateway/bin/CSPa24.so
CSPModulePath /opt/cspgateway/bin/
<Location "/csp/bin/Systems/">
SetHandler cspsys-handler-sa
</Location>
<Location "/csp/bin/RunTime/">
SetHandler csp-handler-sa
</Location>
<Location />
CSP On
</Location>
CSPFileTypes csp cls zen cxw gif jpeg jpg jpe png sgi svg svgz tiff tif ico
Alias /csp/ /opt/cspgateway/csp/
<Directory "/opt/cspgateway/csp">
AllowOverride None
Options MultiViews FollowSymLinks ExecCGI
Order allow,deny
Allow from all
<FilesMatch "\.(log|ini|pid|exe)$">
Deny from all
</FilesMatch>
</Directory>
## START SDS-POC CONFIG ##
<Directory "/opt/intapache/htdocs">
AllowOverride None
Options MultiViews FollowSymLinks ExecCGI
Require all granted
</Directory>
## END SDS-POC CONFIG ##
SSLSessionCache "shmcb:logs/ssl_scache(512000)"
With the limited information provided I built this configuration.
httpd.conf
ServerRoot "/opt/intapache/"
LoadModule authn_file_module modules/mod_authn_file.so
LoadModule authn_core_module modules/mod_authn_core.so
LoadModule authz_host_module modules/mod_authz_host.so
LoadModule authz_groupfile_module modules/mod_authz_groupfile.so
LoadModule authz_user_module modules/mod_authz_user.so
LoadModule authz_core_module modules/mod_authz_core.so
LoadModule access_compat_module modules/mod_access_compat.so
LoadModule auth_basic_module modules/mod_auth_basic.so
LoadModule socache_shmcb_module modules/mod_socache_shmcb.so
LoadModule socache_dbm_module modules/mod_socache_dbm.so
LoadModule socache_memcache_module modules/mod_socache_memcache.so
LoadModule reqtimeout_module modules/mod_reqtimeout.so
LoadModule filter_module modules/mod_filter.so
LoadModule mime_module modules/mod_mime.so
LoadModule log_config_module modules/mod_log_config.so
LoadModule env_module modules/mod_env.so
LoadModule headers_module modules/mod_headers.so
LoadModule setenvif_module modules/mod_setenvif.so
LoadModule version_module modules/mod_version.so
LoadModule ssl_module modules/mod_ssl.so
LoadModule unixd_module modules/mod_unixd.so
LoadModule status_module modules/mod_status.so
LoadModule autoindex_module modules/mod_autoindex.so
LoadModule dir_module modules/mod_dir.so
LoadModule alias_module modules/mod_alias.so
<IfModule unixd_module>
User cachedb
Group cachedb
</IfModule>
ServerAdmin you#example.com
<Directory />
AllowOverride none
Require all denied
</Directory>
<Files ".ht*">
Require all denied
</Files>
<IfModule log_config_module>
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %b" common
<IfModule logio_module>
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio
</IfModule>
</IfModule>
<IfModule alias_module>
ScriptAlias /cgi-bin/ "/opt/intapache//cgi-bin/"
</IfModule>
<IfModule cgid_module>
</IfModule>
<Directory "/opt/intapache/cgi-bin">
AllowOverride None
Options None
Require all granted
</Directory>
<IfModule headers_module>
RequestHeader unset Proxy early
</IfModule>
<IfModule mime_module>
TypesConfig conf/mime.types
AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
</IfModule>
<IfModule ssl_module>
SSLRandomSeed startup builtin
SSLRandomSeed connect builtin
SSLSessionCache "shmcb:logs/ssl_scache(512000)"
</IfModule>
Include conf/extra/cspgateway.conf
conf/extra/cspgateway.conf
Listen 8443
<VirtualHost *:8443>
ServerName OLD-example.com
CustomLog "logs/8443_access_log" combined
ErrorLog "logs/8443_error_log"
LogLeval debug
SSLEngine on
SSLCertificateFile "/opt/OLD-example.crt"
SSLCertificateKeyFile "/opt/OLD-example.key"
SSLCertificateChainFile "/opt/OLD-chaincert.crt"
SSLProtocol All -SSLv2 -SSLv3 +TLSv1.2
DirectoryIndex index.html
LoadModule csp_module_sa /opt/cspgateway/bin/CSPa24.so
CSPModulePath /opt/cspgateway/bin/
<Location />
CSP On
</Location>
<Location "/csp/bin/Systems/">
SetHandler cspsys-handler-sa
</Location>
<Location "/csp/bin/RunTime/">
SetHandler csp-handler-sa
</Location>
CSPFileTypes csp cls zen cxw gif jpeg jpg jpe png sgi svg svgz tiff tif ico
DocumentRoot "/opt/cspgateway/csp"
Alias /csp/ /opt/cspgateway/csp/
<Directory "/opt/cspgateway/csp">
AllowOverride None
Options MultiViews FollowSymLinks ExecCGI
Order allow,deny
Allow from all
<FilesMatch "\.(log|ini|pid|exe)$">
Deny from all
</FilesMatch>
</Directory>
</VirtualHost>
Listen 10443
<VirtualHost *:10443>
ServerName NEW-example.com
CustomLog "logs/10443_access_log" combined
ErrorLog "logs/10443_error_log"
LogLeval debug
SSLEngine on
SSLCertificateFile "/opt/NEW-example.crt"
SSLCertificateKeyFile "/opt/NEW-example.key"
SSLCertificateChainFile "/opt/NEW-chaincert.crt"
SSLProtocol All -SSLv2 -SSLv3 +TLSv1.2
DocumentRoot /opt/intapache/htdocs
<Directory "/opt/intapache/htdocs">
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
DirectoryIndex index.html
</VirtualHost>
What was done
Split both sites, each in a separate VirtualHost.
Split the log files, one for each VirtualHost. This helps debug what is going on with each site. I also set LogLevel debug for now, you should set it back to something less verbose once you have something working.
Set different certificates for SSL. This can be undone if you really want both sites to have the same domain name. It is possible here since you use different ports.
All configuration related to each site is contained within it's proper VirtualHost. ex. directories, or the CSP module. I have a hunch that since this module was loaded in the generic section before, it was activated on both connections to 8443 and 10443. From what I understand, it should only be active on connections to 8443, which I did here.
Only 8443 has options Options MultiViews FollowSymLinks ExecCGI. For 10443, it uses the "regular" options for serving html pages and their resources.
SSLSessionCache was moved to httpd.conf, since this is a generic directive.
I removed this directive: Include conf/extra/proxy-html.conf. No loaded module, no directive.
Doing it this way ensures each site is separate from the other. Although I do not know what CSP does, I guess it should not be active for both sites, therefore it was moved into the 8443 VirtualHost.
Last point, ports 8443 and 10443 should be open on the server to allow clients to connect to them.
If that does not work, please start a new question and include:
configuration files
log entries
expected behavior
current behavior
as much details as you can include!

Apache VirtualHost not directing properly

I wanted to set up two virtual hosts for my apache2 running on my computer. I have inserted www.vh1.com and www.vh2.com in my hosts file in C:\Windows\System32\Drivers\etc\host. I have also created the two folders, C:\test1 and C:\test2, with the html files I want www.vh1.com and www.vh2.com to display.
However, when I opened www.vh1.com and www.vh2.com on my browser, I got re-directed to my localhost home page for www.vh2.com, and www.vh1.com showed me that web page on the Internet. Would anyone be able to help resolve this error? Would greatly appreciate it. Below is my apache httpd.conf file, minus comments:
ServerRoot "C:/Program Files (x86)/Apache Software Foundation/Apache2.2"
Listen 80
LoadModule actions_module modules/mod_actions.so
LoadModule alias_module modules/mod_alias.so
LoadModule asis_module modules/mod_asis.so
LoadModule auth_basic_module modules/mod_auth_basic.so
LoadModule authn_default_module modules/mod_authn_default.so
LoadModule authn_file_module modules/mod_authn_file.so
LoadModule authz_default_module modules/mod_authz_default.so
LoadModule authz_groupfile_module modules/mod_authz_groupfile.so
LoadModule authz_host_module modules/mod_authz_host.so
LoadModule authz_user_module modules/mod_authz_user.so
LoadModule autoindex_module modules/mod_autoindex.so
LoadModule cgi_module modules/mod_cgi.so
LoadModule dir_module modules/mod_dir.so
LoadModule env_module modules/mod_env.so
LoadModule include_module modules/mod_include.so
LoadModule isapi_module modules/mod_isapi.so
LoadModule log_config_module modules/mod_log_config.so
LoadModule mime_module modules/mod_mime.so
LoadModule negotiation_module modules/mod_negotiation.so
LoadModule setenvif_module modules/mod_setenvif.so
<IfModule !mpm_netware_module>
<IfModule !mpm_winnt_module>
User daemon
Group daemon
</IfModule>
</IfModule>
ServerAdmin tomlin190#hotmail.com
DocumentRoot "C:/Program Files (x86)/Apache Software Foundation/Apache2.2/htdocs"
<Directory />
Options FollowSymLinks ExecCGI
AddHandler cgi-script .cgi .py
AllowOverride None
Order deny,allow
Deny from all
</Directory>
<Directory "C:/Program Files (x86)/Apache Software Foundation/Apache2.2/htdocs">
Options Indexes FollowSymLinks ExecCGI
AllowOverride AuthConfig
Order allow,deny
Allow from all
</Directory>
<IfModule dir_module>
DirectoryIndex index.php index.html
</IfModule>
<FilesMatch "^\.ht">
Order allow,deny
Deny from all
Satisfy All
</FilesMatch>
ErrorLog "logs/error.log"
LogLevel warn
<IfModule log_config_module>
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %b" common
<IfModule logio_module>
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio
</IfModule>
CustomLog "logs/access.log" common
</IfModule>
<IfModule alias_module>
ScriptAlias /cgi-bin/ "C:/Program Files (x86)/Apache Software Foundation/Apache2.2/cgi-bin/"
</IfModule>
<IfModule cgid_module>
</IfModule>
<Directory "C:/Program Files (x86)/Apache Software Foundation/Apache2.2/cgi-bin">
AllowOverride None
Options None
Order allow,deny
Allow from all
</Directory>
DefaultType text/plain
<IfModule mime_module>
TypesConfig conf/mime.types
AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
AddHandler cgi-script .cgi .py
</IfModule>
NameVirtualHost *:80
<VirtualHost *:80>
DocumentRoot "c:/test1"
ServerName www.vh1.com
<Directory "c:/test1">
Options All
AllowOverride All
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "c:/test2"
ServerName www.vh2.com
<Directory "c:/test2">
Options All
AllowOverride All
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
<IfModule ssl_module>
SSLRandomSeed startup builtin
SSLRandomSeed connect builtin
</IfModule>
LoadModule php5_module "c:/php/php5apache2_2.dll"
AddType application/x-httpd-php .php
PHPIniDir "C:/php"
in case www.vh1.com get's you online I suspect it must be some mistake in your host file. It should resolve to localhost.
Please check this link http://foundationphp.com/tutorials/apache_vhosts.php
I have no way of testing you conf file since I only host on Linux.
Honestly i have no idea if double quote are required. I would cut them, move Directory outside VirtualHost rules.

How to make apache start?

I installed a portable XAMPP webserver at usb stick and have found that is not portable at all. I also deployed a huge site in it. So I decided to change apache and myslq configs to get some experience and save the time from reinstalling the webserver and a huge site again.
I changed pathes to relative ones in configuration files of apache and now it can't be launched and windows tells that it will close this application. Please help me to know what is going on
Here is httpd.conf:
ServerRoot "apache"
Listen 80
LoadModule access_compat_module modules/mod_access_compat.so
LoadModule actions_module modules/mod_actions.so
LoadModule alias_module modules/mod_alias.so
LoadModule allowmethods_module modules/mod_allowmethods.so
LoadModule asis_module modules/mod_asis.so
LoadModule auth_basic_module modules/mod_auth_basic.so
LoadModule authn_core_module modules/mod_authn_core.so
LoadModule authn_file_module modules/mod_authn_file.so
LoadModule authz_core_module modules/mod_authz_core.so
LoadModule authz_groupfile_module modules/mod_authz_groupfile.so
LoadModule authz_host_module modules/mod_authz_host.so
LoadModule authz_user_module modules/mod_authz_user.so
LoadModule autoindex_module modules/mod_autoindex.so
LoadModule cgi_module modules/mod_cgi.so
LoadModule dav_lock_module modules/mod_dav_lock.so
LoadModule dir_module modules/mod_dir.so
LoadModule env_module modules/mod_env.so
LoadModule headers_module modules/mod_headers.so
LoadModule include_module modules/mod_include.so
LoadModule info_module modules/mod_info.so
LoadModule isapi_module modules/mod_isapi.so
LoadModule log_config_module modules/mod_log_config.so
LoadModule cache_disk_module modules/mod_cache_disk.so
LoadModule mime_module modules/mod_mime.so
LoadModule negotiation_module modules/mod_negotiation.so
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
LoadModule rewrite_module modules/mod_rewrite.so
LoadModule setenvif_module modules/mod_setenvif.so
LoadModule socache_shmcb_module modules/mod_socache_shmcb.so
LoadModule ssl_module modules/mod_ssl.so
LoadModule status_module modules/mod_status.so
<IfModule unixd_module>
User daemon
Group daemon
</IfModule>
ServerAdmin postmaster#localhost
ServerName localhost:80
<Directory />
AllowOverride none
Require all denied
</Directory>
DocumentRoot "../htdocs"
<Directory "../htdocs">
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride All
Require all granted
</Directory>
<IfModule dir_module>
DirectoryIndex index.php index.pl index.cgi index.asp index.shtml index.html index.htm \
default.php default.pl default.cgi default.asp default.shtml default.html default.htm \
home.php home.pl home.cgi home.asp home.shtml home.html home.htm
</IfModule>
<Files ".ht*">
Require all denied
</Files>
ErrorLog "logs/error.log"
LogLevel warn
<IfModule log_config_module>
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %b" common
<IfModule logio_module>
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio
</IfModule>
CustomLog "logs/access.log" combined
</IfModule>
<IfModule alias_module>
ScriptAlias /cgi-bin/ "/cgi-bin/"
</IfModule>
<IfModule cgid_module>
</IfModule>
<Directory "/cgi-bin">
AllowOverride All
Options None
Require all granted
</Directory>
<IfModule mime_module>
TypesConfig conf/mime.types
AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
AddHandler cgi-script .cgi .pl .asp
AddType text/html .shtml
AddOutputFilter INCLUDES .shtml
</IfModule>
<IfModule mime_magic_module>
MIMEMagicFile "conf/magic"
</IfModule>
Include conf/extra/httpd-mpm.conf
Include conf/extra/httpd-multilang-errordoc.conf
Include conf/extra/httpd-autoindex.conf
Include conf/extra/httpd-languages.conf
Include conf/extra/httpd-userdir.conf
Include conf/extra/httpd-info.conf
Include conf/extra/httpd-vhosts.conf
Include "conf/extra/httpd-proxy.conf"
Include "conf/extra/httpd-default.conf"
Include "conf/extra/httpd-xampp.conf"
<IfModule proxy_html_module>
Include conf/extra/proxy-html.conf
</IfModule>
Include conf/extra/httpd-ssl.conf
<IfModule ssl_module>
SSLRandomSeed startup builtin
SSLRandomSeed connect builtin
</IfModule>
AcceptFilter http none
<IfModule mod_proxy.c>
<IfModule mod_proxy_ajp.c>
Include "conf/extra/httpd-ajp.conf"
</IfModule>
</IfModule>
and here is httpd-xampp.conf:
CODE: SELECT ALL
<IfModule env_module>
SetEnv MIBDIRS "../../../php/extras/mibs"
SetEnv MYSQL_HOME "\\xampp\\mysql\\bin"
SetEnv OPENSSL_CONF "F:/xamp_port/apache/bin/openssl.cnf"
SetEnv PHP_PEAR_SYSCONF_DIR "\\xampp\\php"
SetEnv PHPRC "\\xampp\\php"
SetEnv TMP "\\xampp\\tmp"
</IfModule>
LoadFile "../php/php5ts.dll"
LoadFile "../php/libpq.dll"
LoadModule php5_module "../php/php5apache2_4.dll"
<FilesMatch "\.php$">
SetHandler application/x-httpd-php
</FilesMatch>
<FilesMatch "\.phps$">
SetHandler application/x-httpd-php-source
</FilesMatch>
<IfModule php5_module>
PHPINIDir "../php"
</IfModule>
<IfModule mime_module>
AddType text/html .php .phps
</IfModule>
ScriptAlias /php-cgi/ "../php/"
<Directory "../php">
AllowOverride None
Options None
Require all denied
<Files "php-cgi.exe">
Require all granted
</Files>
</Directory>
<Directory "../cgi-bin">
<FilesMatch "\.php$">
SetHandler cgi-script
</FilesMatch>
<FilesMatch "\.phps$">
SetHandler None
</FilesMatch>
</Directory>
<Directory "../htdocs/xampp">
<IfModule php5_module>
<Files "status.php">
php_admin_flag safe_mode off
</Files>
</IfModule>
AllowOverride AuthConfig
</Directory>
<IfModule alias_module>
Alias /security "../security/htdocs/"
<Directory "../security/htdocs">
<IfModule php5_module>
<Files "xamppsecurity.php">
php_admin_flag safe_mode off
</Files>
</IfModule>
AllowOverride AuthConfig
Require all granted
</Directory>
Alias /licenses "../licenses/"
<Directory "../licenses">
Options +Indexes
<IfModule autoindex_color_module>
DirectoryIndexTextColor "#000000"
DirectoryIndexBGColor "#f8e8a0"
DirectoryIndexLinkColor "#bb3902"
DirectoryIndexVLinkColor "#bb3902"
DirectoryIndexALinkColor "#bb3902"
</IfModule>
Require all granted
</Directory>
Alias /phpmyadmin "../phpMyAdmin/"
<Directory "..">
AllowOverride AuthConfig
Require all granted
</Directory>
Alias /webalizer "../webalizer/"
<Directory "../webalizer">
<IfModule php5_module>
<Files "webalizer.php">
php_admin_flag safe_mode off
</Files>
</IfModule>
AllowOverride AuthConfig
Require all granted
</Directory>
</IfModule>
<LocationMatch "^/(?i:(?:xampp|security|licenses|phpmyadmin|webalizer|server-status|server-info))">
Require local
ErrorDocument 403 /error/XAMPP_FORBIDDEN.html.var
</LocationMatch>
The decision is to download and unzip zip distributive of portable version and then copy all configuration files from it. And by the way - the xampp must be placed in the root of the disk

how to properly enable SSL on localhost

I have a web application (java, jsp)running on tomcat 7 . It runs perfectly fine when i do http://localhost.somedomain.com/
i want to enable SSL so that i can access my site https://localhost.somedomain.com/
I have installed self signed certificate and configured httpd.conf ( on apache)
by following the steps as explained in
https://getgrav.org/blog/mac-os-x-apache-setup-ssl
when i access https://localhost.somedomain.com/ it seems to look for index.html to serve . i added a dummy index.html in root of my web application and it gets served. It seems to serve as static file than rendering it as a web application(executing the controller as done by the http version ). When i access https://localhost.somedomain.com/url/ it reports a 404 /url/ not found
My first question is ,
do i need to do any configuration to tomcat (server.xml) in addition to changes in httpd.conf (apache)
My second question is ,
in httpd.conf i have given the document root as the folder where the webapplication is deployed to (/apps/sstp/tomcat/webapps/ROOT) , Is this correct? my httpd.conf entry is as below
my httpd.conf file is as below
ServerRoot "/usr"
Listen 80
Listen 443
LoadModule authn_file_module libexec/apache2/mod_authn_file.so
LoadModule authn_core_module libexec/apache2/mod_authn_core.so
LoadModule authz_host_module libexec/apache2/mod_authz_host.so
LoadModule authz_groupfile_module libexec/apache2/mod_authz_groupfile.so
LoadModule authz_user_module libexec/apache2/mod_authz_user.so
LoadModule authz_core_module libexec/apache2/mod_authz_core.so
LoadModule access_compat_module libexec/apache2/mod_access_compat.so
LoadModule auth_basic_module libexec/apache2/mod_auth_basic.so
LoadModule socache_shmcb_module libexec/apache2/mod_socache_shmcb.so
LoadModule reqtimeout_module libexec/apache2/mod_reqtimeout.so
LoadModule filter_module libexec/apache2/mod_filter.so
LoadModule mime_module libexec/apache2/mod_mime.so
LoadModule log_config_module libexec/apache2/mod_log_config.so
LoadModule env_module libexec/apache2/mod_env.so
LoadModule headers_module libexec/apache2/mod_headers.so
LoadModule setenvif_module libexec/apache2/mod_setenvif.so
LoadModule version_module libexec/apache2/mod_version.so
LoadModule proxy_module libexec/apache2/mod_proxy.so
LoadModule proxy_connect_module libexec/apache2/mod_proxy_connect.so
LoadModule proxy_ftp_module libexec/apache2/mod_proxy_ftp.so
LoadModule proxy_http_module libexec/apache2/mod_proxy_http.so
LoadModule proxy_fcgi_module libexec/apache2/mod_proxy_fcgi.so
LoadModule proxy_scgi_module libexec/apache2/mod_proxy_scgi.so
LoadModule proxy_wstunnel_module libexec/apache2/mod_proxy_wstunnel.so
LoadModule proxy_ajp_module libexec/apache2/mod_proxy_ajp.so
LoadModule proxy_balancer_module libexec/apache2/mod_proxy_balancer.so
LoadModule proxy_express_module libexec/apache2/mod_proxy_express.so
LoadModule slotmem_shm_module libexec/apache2/mod_slotmem_shm.so
LoadModule ssl_module libexec/apache2/mod_ssl.so
LoadModule lbmethod_byrequests_module libexec/apache2/mod_lbmethod_byrequests.so
LoadModule lbmethod_bytraffic_module libexec/apache2/mod_lbmethod_bytraffic.so
LoadModule lbmethod_bybusyness_module libexec/apache2/mod_lbmethod_bybusyness.so
LoadModule unixd_module libexec/apache2/mod_unixd.so
LoadModule status_module libexec/apache2/mod_status.so
LoadModule autoindex_module libexec/apache2/mod_autoindex.so
LoadModule negotiation_module libexec/apache2/mod_negotiation.so
LoadModule dir_module libexec/apache2/mod_dir.so
LoadModule alias_module libexec/apache2/mod_alias.so
LoadModule hfs_apple_module libexec/apache2/mod_hfs_apple.so
<IfModule unixd_module>
User _www
Group _www
</IfModule>
ServerAdmin you#example.com
ServerName localhost.somedomain.com
<Directory />
AllowOverride All
Require all granted
</Directory>
DocumentRoot "/apps/sstp/tomcat/webapps/ROOT"
<Directory "/apps/sstp/tomcat/webapps/ROOT">
Require all granted
Options Includes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
<IfModule dir_module>
DirectoryIndex index.html
</IfModule>
<FilesMatch "^\.([Hh][Tt]|[Dd][Ss]_[Ss])">
Require all denied
</FilesMatch>
<Files "rsrc">
Require all denied
</Files>
<DirectoryMatch ".*\.\.namedfork">
Require all denied
</DirectoryMatch>
ErrorLog "/private/var/log/apache2/error_log"
LogLevel warn
<IfModule log_config_module>
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %b" common
<IfModule logio_module>
# You need to enable mod_logio.c to use %I and %O
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio
</IfModule>
CustomLog "/private/var/log/apache2/access_log" common
</IfModule>
<IfModule alias_module>
ScriptAliasMatch ^/cgi-bin/((?!(?i:webobjects)).*$) "/Library/WebServer/CGI-Executables/$1"
</IfModule>
<IfModule cgid_module>
</IfModule>
<Directory "/Library/WebServer/CGI-Executables">
AllowOverride None
Options None
Require all granted
</Directory>
<IfModule mime_module>
TypesConfig /private/etc/apache2/mime.types
AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
</IfModule>
TraceEnable off
Include /private/etc/apache2/extra/httpd-mpm.conf
Include /private/etc/apache2/extra/httpd-autoindex.conf
Include /private/etc/apache2/extra/httpd-vhosts.conf
<IfModule proxy_html_module>
Include /private/etc/apache2/extra/proxy-html.conf
</IfModule>
Include /private/etc/apache2/extra/httpd-ssl.conf
<IfModule ssl_module>
SSLRandomSeed startup builtin
SSLRandomSeed connect builtin
</IfModule>
Include /private/etc/apache2/other/*.conf
my httpd-vhosts.conf is as below
<VirtualHost *:443>
ServerAdmin a#b.com
DocumentRoot "/apps/sstp/tomcat/webapps/ROOT"
ServerName localhost.somedomain.com
SSLEngine on
SSLCertificateFile "/private/etc/apache2/server.crt"
SSLCertificateKeyFile "/private/etc/apache2/server.key"
</VirtualHost>
my httpd-ssl.conf is as below
Listen 443
SSLCipherSuite HIGH:MEDIUM:!MD5:!RC4
SSLProxyCipherSuite HIGH:MEDIUM:!MD5:!RC4
SSLHonorCipherOrder on
SSLProtocol all -SSLv3
SSLProxyProtocol all -SSLv3
SSLPassPhraseDialog builtin
SSLSessionCache "shmcb:/private/var/run/ssl_scache(512000)"
SSLSessionCacheTimeout 300
<VirtualHost *:443>
DocumentRoot "/apps/sstp/tomcat/webapps/ROOT"
ServerName localhost.somedomain.com
ErrorLog "/private/var/log/apache2/error_log"
TransferLog "/private/var/log/apache2/access_log"
SSLEngine on
SSLCertificateFile "/private/etc/apache2/server.crt"
SSLCertificateKeyFile "/private/etc/apache2/server.key"
<FilesMatch "\.(cgi|shtml|phtml|php)$">
SSLOptions +StdEnvVars
</FilesMatch>
<Directory "/Library/WebServer/CGI-Executables">
SSLOptions +StdEnvVars
</Directory>
BrowserMatch "MSIE [2-5]" \
nokeepalive ssl-unclean-shutdown \
downgrade-1.0 force-response-1.0
CustomLog "/private/var/log/apache2/ssl_request_log" \
"%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
</VirtualHost>
my tomcat server.xml is as below
<?xml version='1.0' encoding='utf-8'?>
<Server port="8005" shutdown="SHUTDOWN">
<Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on"/>
<Listener className="org.apache.catalina.core.JasperListener"/>
<Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener"/>
<Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener"/>
<Listener className="org.apache.catalina.core.ThreadLocalLeakPreventionListener" />
<GlobalNamingResources>
</GlobalNamingResources>
<Service name="Catalina">
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443"
address="127.0.0.1"
maxThreads="1500"
acceptCount="100"
secure="#tomcat.session.secure#"/>
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443"/>
<Engine name="Catalina" defaultHost="localhost">
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<Context docBase="/apps/sstp/tomcat/html" path="/info"/>
</Host>
</Engine>
</Service>
</Server>
In very simple words i want to configure whatever is needed to make my application running as http://localhost.somedomain.com to run over ssl as https://localhost.somedomain.com
This is missing in httpd-vhosts.conf
ProxyPreserveHost On
ProxyPass / ajp://localhost:8009/
ProxyPassReverse / ajp://localhost:8009/
Because of this, request is not routed from apache to tomcat
By the description in your question I read that you set up SSL on the apache and want to pass the requests to tomcat using the AJP-protocol. In that case you should not specify the DocumentRoot of your VirtualHost to be some tomcat-directory but you should instead specify the correct JkMount (if you are using mod_jk) or ProxyPass (if you are using mod_proxy_ajp) directives. Take a look at the configuration of your virtual host on port 80, it should contain the correct statements and you could just copy them over to your SSL-virtualHost.

Running multi tenancy on same port with apache web server - NameBasedVirtualHsoting

I have been working to get multi tenancy running on same port on same ip address. I have achieved the objective with different ports but I can't run the same on one port only.
Here the apache web server redirects the request to weblogic host on same machine.
I have gone through multiple guides but it is not working as expected. I have configured two virtual hosts for same port with URL as localhost:9010/site1 and localhost:9010/site2. The configuration in httpd.conf is mentioned below. I don't know where I have made the mistake so I have kept whole configuration file.
Define SRVROOT "D:\Apache24"
ServerRoot "${SRVROOT}"
Listen 9010
#Listen 9011
LoadModule actions_module modules/mod_actions.so
LoadModule alias_module modules/mod_alias.so
LoadModule allowmethods_module modules/mod_allowmethods.so
LoadModule asis_module modules/mod_asis.so
LoadModule auth_basic_module modules/mod_auth_basic.so
LoadModule authn_core_module modules/mod_authn_core.so
LoadModule authn_file_module modules/mod_authn_file.so
LoadModule authz_core_module modules/mod_authz_core.so
LoadModule authz_groupfile_module modules/mod_authz_groupfile.so
LoadModule authz_host_module modules/mod_authz_host.so
LoadModule authz_user_module modules/mod_authz_user.so
LoadModule autoindex_module modules/mod_autoindex.so
LoadModule cgi_module modules/mod_cgi.so
LoadModule dir_module modules/mod_dir.so
LoadModule env_module modules/mod_env.so
LoadModule headers_module modules/mod_headers.so
LoadModule include_module modules/mod_include.so
LoadModule isapi_module modules/mod_isapi.so
LoadModule log_config_module modules/mod_log_config.so
LoadModule mime_module modules/mod_mime.so
LoadModule negotiation_module modules/mod_negotiation.so
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
LoadModule proxy_html_module modules/mod_proxy_html.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule setenvif_module modules/mod_setenvif.so
LoadModule socache_shmcb_module modules/mod_socache_shmcb.so
LoadModule ssl_module modules/mod_ssl.so
LoadModule xml2enc_module modules/mod_xml2enc.so
<IfModule unixd_module>
User daemon
Group daemon
</IfModule>
<Directory />
AllowOverride ALL
Require all granted
</Directory>
DocumentRoot "${SRVROOT}/htdocs"
<Directory "${SRVROOT}/htdocs">
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
<IfModule dir_module>
DirectoryIndex /home
</IfModule>
<Files ".ht*">
Require all denied
</Files>
ErrorLog "logs/error.log"
LogLevel warn
<IfModule log_config_module>
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %b" common
<IfModule logio_module>
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio
</IfModule>
CustomLog "logs/access.log" common
</IfModule>
<IfModule alias_module>
ScriptAlias /cgi-bin/ "${SRVROOT}/cgi-bin/"
</IfModule>
<IfModule cgid_module>
</IfModule>
<Directory "${SRVROOT}/cgi-bin">
AllowOverride None
Options None
Require all granted
</Directory>
<IfModule mime_module>
TypesConfig conf/mime.types
AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
AddType text/css .css
AddType text/javascript .js
</IfModule>
<IfModule proxy_html_module>
Include conf/extra/httpd-proxy-html.conf
</IfModule>
<IfModule ssl_module>
SSLRandomSeed startup builtin
SSLRandomSeed connect builtin
</IfModule>
ProxyRequests on
ProxyIOBufferSize 65536
SSLProxyEngine on
ErrorDocument 403 /home
ErrorDocument 404 /home
NameVirtualHost *:9010
<VirtualHost *:9010>
ServerName localhost:9010/site2
LogLevel info
<Location />
SetHandler weblogic-handler
</Location>
ProxyPass /site2 http://localhost:7001
ProxyPassReverse /site2 http://localhost:7001
ProxyPass /Login.zul http://localhost:7001/Login.zul
ProxyPassReverse /Login.zul http://localhost:7001/Login.zul
<IfModule mod_weblogic.c>
WebLogichost localhost
WebLogicPort 7001
debug OFF
FileCaching OFF
MatchExpression *
KeepAliveSecs 540
</IfModule>
</VirtualHost>
<VirtualHost localhost:9010>
ServerName localhost:9010/site1
LogLevel info
<Location />
SetHandler weblogic-handler
</Location>
ProxyPass /site1 http://localhost:7001
ProxyPassReverse /site1 http://localhost:7001
ProxyPass /Login.zul http://localhost:7001/Login.zul
ProxyPassReverse /Login.zul http://localhost:7001/Login.zul
<IfModule mod_weblogic.c>
WebLogichost localhost
WebLogicPort 7001
debug OFF
FileCaching OFF
MatchExpression *
KeepAliveSecs 540
</IfModule>
</VirtualHost>
Whenever I use different ports for site1 and site2, it runs fine. But keeping the same port does not work for me. Only the virtualhost defined first works and the other returns eorro 404.
Also I found that it is called as Name based virtual hosting. The guides suggests that NameVirtualHost directive should be configured. I have also added the same.
Please help... Thank you in advance..
If you are running 2 VirtualHosts on the same port, the differentiator would be the Servername, such as:
<VirtualHost *:9010>
ServerName site1.localhost.local
......
</VirtualHost>
<VirtualHost *:9010>
ServerName site2.localhost.local
......
</VirtualHost>
In your examples you are using subdirectory as you servername and this is not work, that seems to be the issue