本文目录一览:
phpstudy的apache配置https流程和问题
最近由于弄了一个小程序,需要配置htpps的域名,把操作流程记录一下:
1、去西部数码花了1元弄了一套证书,包含三个文件:
2、把这三个证书文件放进服务器,phpstudy里面创建网站,
把三个证书一个个导入进去,然后选好根目录,php版本,保存后创建网站。
3、上面操作完成后,开始设置
4、设置完httpd.conf后,开始设置httpd-ssl.conf
里面这样配置:
VirtualHost *:443
DocumentRoot "你的域名指向的完整路径"
ServerName 你的域名
Directory "你的域名指向的完整路径"
Allow from all
AllowOverride All
#Options -Indexes +FollowSymLinks +ExecCGI
Options -Indexes +FollowSymLinks
#Order allow,deny
#Require all granted
/Directory
SSLEngine on
SSLCertificateFile D:/phpstudy_pro/Extensions/Apache2.4.39/cert/xxxxxxx.cer
SSLCertificateKeyFile D:/phpstudy_pro/Extensions/Apache2.4.39/cert/xxxxxx.key
SSLCertificateChainFile D:/phpstudy_pro/Extensions/Apache2.4.39/cert/xxxxxx.crt
/VirtualHost
到这里配置就完毕了,我这里访问https正常,搞定
apache和php配置启动成功,但文件验证不成功
检查php的配置。
1、将phpdisplaystartuperrors的值修改成On。
2、然后启动apache。
3、接着找到extensionphpXXXXdll并在前面添加分号即可。
apache 如何部署 php
将你的apache的网站发布到你本机网卡的地址上,然后让处于同一网段内的另一台电脑访问你作为服务器这个电脑的ip即可
注意端口号
1、保证你的apache能正常启动,然后打开httpd.conf那个配置文件,检查一下Listen服务器端口,默认监听端口为80,不是就改成80
2、配置服务器根目录权限
Directory "c:/www/"
Options Indexes FollowSymLinks
AllowOverride all
Order Deny,Allow
Allow from all
/Directory
注意“c:/www/”为你网站根目录。重点是Allow from all,否则访问不进去
3、配置虚拟主机
VirtualHost 192.168.11.108
ServerName 192.168.11.108
DocumentRoot "c:/www/test/"
/VirtualHost
注意VirtualHost 与ServerName一致,除非你有DNS主机。这个ip是我本机的,你要改成你机器的ip,如果不会查IP另追问,DocumentRoot 为你网站的存放目录,你要发布的网页就在这个目录下,注意要在服务器根目录下,否则要另外配置权限。
4、重启apache服务。
5、在apache重启成功后,在你本机,用浏览器访问你的页面。我这里就是192.168.11.108/index.php,你要改成你的ip地址,成功,则发布完成,其他人也可以这么访问网页了
6、如果,在本机访问成功,而在其他设备无法访问,请修复网络问题,有关网络的问题请另追问,并说明报错等状况
我刚才看到,楼主在问题补充中提到了域名,这个的话就不是apache能完成的了,这里需要依靠DNS服务器来解决。
正常的家用电脑,以及路由器,都会自动请求递交给社会公用的域名服务器去进行域名解析,除非你的域名是经过国家正规管理部门购买的域名,否则,所用的域名是不会出现在公网DNS服务器上的,也就不能解析到你的服务器电脑上
简单的配置是这样的。在你服务器电脑上,不仅配置的apache 发布到端口ip。然后还要配置一个DNS服务器,配置你要的域名xx.com为你机器ip的别名。然后将你访问设备的首选DNS指向你的服务器DNS,让你的私有DNS对域名进行解析 即可
mac apache环境 运行php
mac 自带环境 打开终端 输入 sudo apache -v 和php -v 即可查看版本
启动apache
sudo apachectl start Mac自带的Apache启动了 在浏览器输入“”,会显示“It works!”,说明服务器已经启动成功了。Apache默认根目录在“/Library/WebServer/Documents/”下。
配置文件(httpd.config)保存在/etc/apache2
修改配置文件 sudo vi /etc/apache2/httpd.conf
将默认目录/Library/WebServer/Documents 替换成自己需要的目录
LoadModule php7_module libexec/apache2/libphp7.so 将前面的# 去掉
运行localhost 会报错:You don't have permission to access / on this server.
这时修改下apache的配置文件httpd.conf:
AllowOverride None
Require all granted
Order deny,allow
Allow from all
然后 sudo apachectl configtest 查看是否修改成功
配置虚拟机
在配置文件httpd.conf的最后一行 并cd 进去 再 vi 进vhosts.conf文件
接着来到下图 我们可以设置我们拉下来的项目的serverName
修改host文件 sudo vi /etc/hosts
接着在浏览器地址 输入我们项目的servername 即可访问
如果没有成功 一般是缓存原因 换个浏览器 或者清除缓存 关闭浏览器程序 并重启
(以后增加项目 改servername 谷歌有缓存 记得关闭再重启)
一般命令
sudo apachectl start #启动服务器
sudo apachectl restart 重启
sudo apachectl -v 查看服务器版本
sudo apachectl stop #关闭服务器
sudo vi /etc/apache2/httpd.conf 输入密码 进行配置文件修改
sudo apachectl configtest 查看更改是否成功
默认命令行 i 插入模式 esc退出模式
:wq! 保存和退出 (!表示强制修改) 要在英文模式下输入
:w 保存
:q退出
:q! 强制退出 (误改了东西 强制退出 就不会保存)
命令模式下 /content 查找(n查找下一个)
第一步 配置虚拟机
cd /private/etc/apache2/other
vi vhosts.conf
第二步 更改指向
sudo vi /etc/hosts
报错:
E325: ATTENTION
Found a swap file by the name "/var/tmp/vhosts.conf.swp"
原因:
其一,是当前有其他的进程正在对相同的文档进行编辑;
其二,之前的编辑会话被销毁了(crashed)(也就是说,你上次编辑的时候,没有保存就强制离开了。)
原理:
我们在编辑文件的时候,并不是对原有文件进行修改和覆盖的,而是新建一个副本,名字叫xx.swp,我们对文件的编辑都放在了这个副本里面,这也是为什么我们能进行撤销的原因,我们并没有对原有的文件进行修改。当我们正常退出时,这个文件就正常消失,而当我们异常退出时,这个文件就会作为隐藏文件,当我们下次启动vim时,它就会提示我们上次编辑时,有一个文件异常退出了,是否要进行恢复。也就是弹出E325错误。当我们异常退出时,这个隐藏文件会帮助我们还原到上次编辑的状态。也就相当于是一个自动保存的功能。
解决办法:
进入/var/tmp/vhosts.conf.swp 并将这个文件删除