万网域名注册官网网页版,外贸网站如何推广优化,四川互联网广告人,微信网站开发源代码我们在使用linux做服务器的时候#xff0c;因为linux自带的软件包都有些老#xff0c;不是最新的#xff0c;但是有时候我们为了使用最新的软件#xff0c;会使用最新的软件的源码来进行安装。所以我们需要用心去做了...在我们拿到一个软件的源码时#xff0c;源码一般都是…我们在使用linux做服务器的时候因为linux自带的软件包都有些老不是最新的但是有时候我们为了使用最新的软件会使用最新的软件的源码来进行安装。所以我们需要用心去做了...在我们拿到一个软件的源码时源码一般都是使用tar.gz或tar.bz2结尾。源码--》配置文件./configure--》编译(makefile)--》可执行 头文件 库文件 手册--》安装对于源码的安装我们说西安要确定机器安装了编译环境使用yum grouplist |less 查看是否安装了Develoment Libraries 和Develoment Tools开发环境如果没有请先安装否则没法源码安装那我们首先要对源码进行包的拆解tar -zxvf 源码 -C /usr/local/src/(对源码包解压到一个路径/usr/local/src/是系统给我们用来存放源码拆解后的文件路径)源码解压后我们就可以对源码安装了。源码文件解压后进入拆解后的文件一般会看到很多个文件夹或文件其中有一个INSTALL文件或README文件以及配置文件这是我们安装前必看的说明书我们一安装apache服务为例做个实验。安装前先把源码下载到机器里进入所在目录 进入apsche拆解后的目录我们看到一个INSTALL文件查看一下 我们要查看一下configure的使用说明 接下来开始配置安装apache报错了我们来看啊可能否安装了apr我们装了apr但是有的调用的文件并不都在apr里有的在apr-devel里我们去在安装看下然后我们再次执行apache的安装这次有报错了但是说的明确了说我们的apr的版本太低了那我们重新安装我们把apr新版的拆解到/usr/local 下我们安装apr包和apr-util包我们会看到生成了很多的makefile文件那我们直接make安装后我们进入apr文件内因为apache要调用他的库可是apr是我们自己安装的不是默认的路径所以我们要对apr库进行连接处理使apache可以调用那么我没呢可以简单些直接建立一个系统可是识别的文件这样可以避免对所有的库文件做链接建立apr.conf文件把apr的库路径加入进去就ok然后我们要更新缓存在查看是否成功接着安装apr-util然后make和make install现在apr的问题已经解决了那我们重新安装apache但是还是报错 说我们缺少apr-1-config 那我们在说明一次添加他的路径为了避免麻烦我们再次查询一下所有与apr相关的配置 全部带上找到后我们再次重新安装但是又报错了。说我们的pcre没有找到我们来解决他安装prec我们再来安装apache的源码没有报错安装成功生成了很多的makefile文件那我们就安装apache make make install到此我们的apache就是安装完成了我们看到了源码的安装很复杂而且很容易出错我们需要做很多的调试在我们安装完成后但是不完美没法开机自动启动没关系我们来帮他手动启动或自动启动进入/usr/local/apache/bin 目录下我们只需要在命令行下输入 ./httpd -f /usr/local/apache/http.conf 就可以启动但是不是很完美我们可以给他写一个启动脚本一般的服务的脚本放在rtc/init.d/目录下我们就去这里写apache服务脚本脚本如下个人写的有些简陋请见谅#!/bin/bashprog/usr/local/apache/bin/httpdconfigfile/etc/apache/httpd.conflockfile/var/lock/subsys/httpd. /etc/init.d/functionsstart() { if [ -e $lockfile ];then echo The program basename $prog is started! else echo The program basename $prog is starting...... sleep 2 $prog echo -e [ok] touch $lockfile || echo -e [fail] fi}stop() { if [ -e $lockfile ];then echo The program basename $prog is stoping...... sleep 2 killproc httpd echo [ok] rm -rf $lockfile || echo [fail] else echo The program basename $prog is stoped! fi}status() { if [ -e $lockfile ];then echo The program basename $prog is running...... else echo The program basename $prog is stop......fi}case $1 instart) start ;;stop) stop ;;status) status ;;restart) stop start ;;*) echo usage: start|stop|status|restartesac我们对写下的脚本测试一下上面的是我们手动的启动我们的服务我们可以让它开机启动使用chkconfig命令来实现我们要在/etc/init.d/httpd 内增加chkconfig把httpd的启动缓存加入chkconfig这样子httpd服务开机启动的目地就达到了