很久没写博客,从中学到大学,选择太多。
算法竞赛难度不断加大,感觉自己已经无法走下去,兴趣也不够,所以尝试接触多点其他事物吧,或许能找到真爱。
动手写Linux专题的教程,主要源于部门工作需要,也希望分享出来,能帮到有需要的人。
我的LAMP环境的搭建主要使用yum工具逐个安装,傻瓜式,方便快捷。
—— Linux系统环境,我的环境是虚拟机中安装的CentOS 7 x64
备注:这部分的安装教程就不写了,比较简单,至于虚拟机的联网配置问题,可以参考百度。
而且出于安全考虑,我在主机上配置了super user,故很多命令都采用了sudo开头
—— Apache,可以百度了解一下,属于一种开源免费的Web服务器软件
1、用yum安装httpd
命令:$ sudo yum install httpd
备注:根据相应的提示进行确认即可,没有什么特别需要注意的地方。
关于httpd:httpd是http服务的守护进程,我们需要安装的不是http(http是超文本传输协议的缩写),需要安装的是能够在主机上提供http服务的软件(运行后成为进程)。
2、允许开机自启动
命令:$ sudo systemctl enable httpd.service
关于systemctl:systemctl是centos7中新的一种系统管理工具,ctl是control的缩写,之前老式的service enable http.service都需要改用systemctl的相应写法替代。常用的还有systemctl restart httpd.service, systemctl start httpd.service
3、运行httpd
命令:$ sudo systemctl start httpd.service
1、用yum安装php
命令:$ sudo yum install php
备注:根据相应的提示进行确认即可,没有什么特别需要注意的地方。
关于php和php56w:建议有条件的同学可以yum install php56w(这个可能需要单独下载某些php的拓展模块才能正常使用,以后的教程可能会讲到),因为有的框架对php版本要求较高,如tp5要求php >= 5.6.0,而yum install php安装的版本一般为5.4左右。
—— MySQL,一种关系型数据库。据我了解,在其被Oracle公司收购后,其原班人马秉承开源精神,在MySQL基础上开发出了MariaDB。我在主机上安装的就是MariaDB。
1、用yum安装MariaDB
命令:$ sudo yum install mariadb 和 $ sudo yum install mariadb-server(也可以用一条命令一起安装)
备注:安装过程中会有提问,如“是否允许root远程登录”(默认为yes)、“是否设置root密码”(默认为空)......同时系统会默认新建一个叫test的数据库,可供你自己调试后端代码用,这些都根据英文提示相应设置即可,如果设置错了也不怕,可以在安装完成之后到配置文件中修改,文末会附上一些常用的LAMP配置文件目录
2、允许开机自启动
命令:$ sudo systemctl enable mariadb.service
备注:一般会有提示信息,类似“Creat symlink from ... to ...”,这是正常的,一般设置为自启动的软件都会被建立软连接
3、运行mariadb服务
命令:$ sudo systemctl start mariadb.service
命令:$ sudo rpm -ql [package-name]
参数解释:q为询问模式、l为列出目录
关于yum和rpm:yum源均为rpm包,yum与rpm均可作为安装rpm包的工具(事实上,rpm为Red-Hat Package Manager缩写),但yum的好处在于会检索相应的依赖包,方便快速搭建环境,而rpm则不会,可以说yum安装方式是“智能化的rpm安装方式”
仅适用于yum方法安装的L、A、M、P,一键安装LAMP的目录一般会在/usr下,请另寻教程了解
1、/etc/httpd/conf/httpd.conf
文件官方解释为:Apache HTTP Server的主要配置文件。事实上,笔者认为,”主要“只是相对于”拓展“,类似”入口文件“和”头文件“的关系,这么区分精简了httpd.conf文件,详见2
2、/etc/httpd/conf.d/ 中的文件
此目录无法进入,但是可以用ls查看,因为所有者和所属组为apache,且该目录的”其他人的权限“为”r--”。
在httpd.conf最后一样有解释:此目录下文件会被Apache作为拓展配置加载。
而且在httpd.conf中,有用于”包含“(Include)该目录下文件的命令,此做法等价于将相应拓展配置文件的内容复制粘贴到httpd.conf中。
其中包含了apache模块的加载配置文件、php与url重写有关的配置(php.conf)
3、/etc/php.ini
php软件的配置文件
4、/etc/php.d/ 中的文件
可以在php.ini中给出的解释是:该目录下的配置文件会被php自动加载,其与php.ini的关系类似apache服务器”拓展配置“和”主要配置“的关系
5、/var/www/html/
此目录为apache服务器提供http服务的网站根目录
6、/etc/my.cnf
mysql的配置文件
7、/var/mysql/
此目录包含了mariadb数据库的数据文件
第一篇教程博文,希望大家能指出我写得思路不清晰或实践性不强或错漏之处~