Part 1 常见Web服务端架构简介课后题
【解析】MySQL默认监听端口号为3306,查看方式:
mysql -u root -p # 按回车之后输入密码
show global variables like ‘port’;
【解析】前三种都是访问web服务的方式。对于D选项,个人理解,Mac地址对于本地网络才有意义,而访问web服务需要通过路由器,Mac地址过不了路由器。(这一点我不大明白orz,欢迎大家发邮件和我交流:温酒的周同学邮箱)
【解析】C选项,可以解释为本地可以,远程不行?(这一点我不大明白orz,欢迎大家发邮件和我交流:温酒的周同学邮箱)
【解析】Apache服务器的全称是 Apache HTTP Server,使用的是HTTP协议,所以默认端口是80。
【解析】PHP 是一种创建动态交互性站点的强有力的服务器端脚本语言。它适用于网络开发,也可嵌入HTML中使用,允许快速编写动态页面。PHP 能够在所有的主流操作系统上使用,包括 Linux、Unix 的各种变种(包括 HP-UX、Solaris 和 OpenBSD)、Microsoft Windows、Mac OS X、RISC OS 等。
Part 2 macOS Mojave上部署web服务端和使用PHP
哦,Mac OS X 自带了 Apache 和 PHP 环境,这么厉害的吗?
开启和使用web服务端
打开“系统设置偏好(System Preferences)” -> “共享(Sharing)” -> “Web共享(Web Sharing)”
通过在terminal终端直接运行Apache的启动命令来打开:sudo apachectl start启动后,我们在浏览器输入 http://localhost 会发现
Apache服务器默认的web根目录在:/Library/WebServer/Documents
Apache的配置文件在:/etc/apache2
我们写一个简单的demo进行测试
将HTML文件保存一下,将其拷贝到 /Library/WebServer/Documents
目录下,只要在该文件目录下的文件,所有局域网下用户都可以进行访问。
先查看下本机IP,如下图最下面一行:
访问情况如下:
如果不能复制或是移动的话(报错为permission denied),那么是权限问题,在命令前面添加sudo 就好了。命令如下:
sudo mv filename.html /Library/WebServer/Documents
PHP的开启和使用
直接在Mac 终端打开配置文件加载Apache中的PHP模块:
sudo vi /etc/apache2/httpd.conf
打开之后一直往下拉,一般是指loadmodule 那一块的倒数第三行,寻找如下格式语句
#LoadModule php*_module libexec/apache2/libphp*.so
上述*字符为版本号,随你的系统版本而变。
类将注释符#去掉,并保存。 输入 i , 将光标移到上面条目,将 # 删掉 , 然后按esc键,输入:x表示保存,按回车确认。:q 表示不保存退出。
在终端运行sudo apachectl restart
重启Apache服务器。
同样写个PHP文件来测试一下我们是否开启成功吧!
<!DOCTYPE html>
<html>
<body>
<h1>My first PHP webpage</h1>
<?php
echo "Hello World!";
?>
</body>
</html>
测试的结果如下
似乎Apache服务器对文件名大小写不敏感,我的命名方式都采用的驼峰命名法,但显示出来全是小写。问题不大。规范命名,从我做起,yeah~
参考文档
1、PHP语法
2、Mac上简单搭建Web服务器