韩林涛老师:译者编程知识30天×300字写作计划 | Day 17

今天一位读者在电脑上安装了MAMP Pro后发现软件中默认的撰写代码的位置和书里不一样,几经波折后找到了具体位置,结果文件又无法访问。

我是这样引导TA找到解决方案的:

第一步:前往General标签,看看那里的Document root显示的位置什么,如图1。可见,我的电脑上是htdocs。

第二步:前往Databases标签,点击最底下的橙色标签,看看能否打开,如图2。

如果打不开,就去点击最右上角的开关键,如图3;如果打得开,就去看打开之后的网址是什么,看看localhost后面是否有一串数字,比如:localhost:8888,如果有,那你以后在访问自己的网页时,也不要忘记在localhost后面加上这个数字。

这个数字是什么呢?请看下面这段文字:

之前帮读者解决问题时发现有一个书中没有讲的知识点:端口(Port)

其实这个知识点很有趣。先说个更有意思的:比如你们家现在有了一块儿地,上面要盖房子,首先要决定大门朝哪边,一般会朝哪儿呢?

中国因为在北半球,到了冬天最怕的就是“北风”,所以门不能超北边,否则冷风一下子就吹了进来,因此大门习惯朝难,这就是“坐北朝南”。

不过现在我们习惯上会用另外一种说法,就是让阳光从南边晒进来,因为太阳东升西落,东南西北四个方向里,太阳最好的时候是在东和西之间,也就是“南”,因此家里的阳台、客厅、主卧的方向要朝南。

上面这个例子就是想说,门和窗户就是进你们家的通道(Port)。当我们说从你们家的主要通道进入时,也许默认就是从南边进去。

在一台连接了网线可访问互联网的电脑上,这台电脑不仅可以从外界获取数据,也可以提供数据给外界,提供数据的这个动作就是提供服务,所以我们会将这台电脑称为“服务器”。这台服务器上不仅可以提供网页浏览服务,也可以提供文件存储服务,也可以提供电子邮件发送服务。

在我们的教材中,我们往往会让大家这样访问网址:localhost/html

在这里localhost就是提供各种服务的服务器的地址,而html就是这个服务器里的一个文件夹的名字。

之所以我们能够通过这个方式访问到网页,是因为我们省略掉了一些内容:

http://localhost:80/html/index.html

其中:http://%E5%B0%B1%E6%98%AF%E6%88%91%E4%BB%AC%E9%81%B5%E5%BE%AA%E7%9A%84http%E5%8D%8F%E8%AE%AE

80就是服务器提供网页访问服务的默认端口

index.html就是我们访问html这个文件夹时默认访问的文件名。

而这里的80就像是我们前面说的那个“南”一样,从创始人到普通用户,大家都默认了80就是服务器上默认的网页访问服务入口的编号,所以往往就不写了。

但是,当你在自己电脑上访问网址时收到这样的提示:

浏览器不能连接到服务器

一个原因是服务器的地址错了,或者文件夹的地址错了,或者文件的地址错了。

另一个原因就是:端口(Port)错了。

当所有人的正门都开在南边的时候,你们偏偏开在西边,那别人到你家来问你从哪儿进,你说:啊,从正门进就行了

结果人家默认从南门进,就进不来了。你这才告诉他:不好意思啊,端口改成西门了。所以这个时候网址就要改成:

localhost:西门/html

我们将真正的端口放到服务器的地址后面,加上冒号,然后加上端口的代码。

显然我们平时访问网址时不可能用中文来做端口名,而是用数字,所以正确的端口代码是什么,我们就要换成什么数字,比如:

localhot:8888/html

我们前面也讲了,一台服务器不可能只提供一种服务,所以往往不同的服务会分配不同的端口号。假如某个端口号被占用了,已经有服务了,你还想用这个端口来提供另一种服务,那自然新的服务就无法安装成功,你就用不了了。就只能想办法停掉之前的那个端口提供的服务,再安装新的。

常见的端口号有:

FTP文件传输:20、21 SMTP邮件发送服务:25 POP3邮件发送服务:110 普通的超文本传输服务(HTTP):80 加密的超文本传输服务(HTTP):443 普通的超文本传输服务测试端口:8080

以后大家再看到这些数字就不会不知道来源了。

作者:韩林涛,北京语言大学高级翻译学院教师,《译者编程入门指南》作者