我正在本地机器上编写一个php应用程序,并希望测试一下SSL是否正常工作。请原谅我,因为这是我第一次使用SSL。
到目前为止,我所做的就是:
server.crt
文件导入到chrome中。;extension=php_openssl.dll
in php.ini
(参考文献)前面的分号httpd-vhosts.conf
页面编辑了我的这文件。该文件的相关部分如下。这是完整的文件:http://pastebin.com/k6Jh2eR6 DocumentRoot "C:\Users\user_name\Documents\project_one“ServerName project_one.localhost SSLEngine on SSLCertificateFile "conf/ssl.crt/server.crt”SSLCertificateKeyFile "conf/ssl.key/server.key“ AllowOverride ServerName project_one.localhost SSLEngine on SSLCertificateFile,拒绝所有我通常会通过输入http://project_one.localhost
来访问我的项目
当试图通过在chrome中键入https://project_one.localhost
https://project_one.localhost/xampp/
来访问我的项目时,它会自动被转发到https://project_one.localhost/xampp/
(就好像XAMPP根本不承认 https://project_one.localhost
是子域,并且把它当作是在 https://localhost
**)中输入--知道我在哪里搞砸了吗?**)
注意:
LoadModule ssl_module modules/mod_ssl.so
在httpd.conf
文件中未注释发布于 2013-05-26 16:34:17
HTTPS://url.here/
品种的SSL完全由Apache处理,与PHP任何扩展/模块或任何php.ini设置无关。
一个典型的启用SSL的VirtualHost看起来像这样,至少包含以下这些部分.
<VirtualHost *:443>
DocumentRoot "C:/WampDeveloper/Websites/www.example.com/webroot"
ServerName www.example.com
ServerAlias example.com
SSLEngine On
SSLCertificateFile "C:/WampDeveloper/Websites/www.example.com/certs/public.crt"
SSLCertificateKeyFile "C:/WampDeveloper/Websites/www.example.com/certs/private.key"
<Directory "C:/WampDeveloper/Websites/www.example.com/webroot">
Options All
AllowOverride All
order allow,deny
allow from all
</Directory>
</VirtualHost>
(上面的路径来自我的WampDeveloper Pro设置,Xampp的将略有不同)
你的<VirtualHost *>
线路有问题。它需要一个端口号,对于HTTPS:// URL来说,端口号总是为443,与它之前的IP地址或星号组合在一起。如果使用星星,也是NameVirtualHost *:443
线.
NameVirtualHost *:80
NameVirtualHost *:443
<VirtualHost *:80>
DocumentRoot "C:\xampp\htdocs"
ServerName localhost
</VirtualHost>
<VirtualHost *:443>
DocumentRoot "C:\Users\user_name\Documents\project_one"
ServerName project_one.localhost
SSLEngine on
SSLCertificateFile "conf/ssl.crt/server.crt"
SSLCertificateKeyFile "conf/ssl.key/server.key"
<Directory "C:\Users\user_name\Documents\project_one">
AllowOverride All
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "C:\Users\user_name\Documents\project_two"
ServerName project_two.localhost
<Directory "C:\Users\user_name\Documents\project_two">
AllowOverride All
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
发布于 2016-07-02 12:18:11
下面是简单的步骤。
开放httpd.conf
并启用ssl扩展(从行删除#)
LoadModule ssl_module modules/mod_ssl.so
开放httpd-vhosts.conf
添加新的虚拟主机或编辑现有的
<VirtualHost *:443>
DocumentRoot "C:/xampp/htdocs/PROJECTNAME"
ServerName www.pl.f24sdev.com
<Directory C:/xampp/htdocs/PROJECTPATH>
AllowOverride All
Order Deny,Allow
Allow from all
</Directory>
SSLEngine on
SSLCertificateFile "conf/ssl.crt/server.crt"
SSLCertificateKeyFile "conf/ssl.key/server.key"
</VirtualHost>
发布于 2014-09-11 15:16:24
这也许是个老生常谈的问题,但我还是要把我的答案放在这里,供将来参考。
我是使用XAMPP3.2.1的,编译于2013年5月7日,
为了同时启用VirtualHost
和SSL
,这里是我所做的。(我在使用windows 7)
HOST
文件必须已经安装完毕。httpd-ssl.conf
的xampp\apache\conf\extra
我只是复制了_default_
virtualhost
并添加了我的配置。我删除了所有较短的注释,并将其粘贴到默认的virtualHost
下面,只需更改DocumentRoot
和servername
,然后重新启动apache。
<VirtualHost *:443>
DocumentRoot "***path/to/your/project}***"
ServerName ***yourdomain***
ServerAdmin admin@example.com
ErrorLog "C:/xampp/apache/logs/error.log"
TransferLog "C:/xampp/apache/logs/access.log"
SSLEngine on
SSLCertificateFile "conf/ssl.crt/server.crt"
SSLCertificateKeyFile "conf/ssl.key/server.key"
<FilesMatch "\.(cgi|shtml|phtml|php)$">
SSLOptions +StdEnvVars
</FilesMatch>
<Directory "C:/xampp/apache/cgi-bin">
SSLOptions +StdEnvVars
</Directory>
BrowserMatch "MSIE [2-5]" \
nokeepalive ssl-unclean-shutdown \
downgrade-1.0 force-response-1.0
CustomLog "C:/xampp/apache/logs/ssl_request.log" \
"%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
</VirtualHost>
https://stackoverflow.com/questions/16430574
复制相似问题