记一次CentOS7.9编译安装LAMP服务 liunx apache mysql php

采用编译安装,所有命令都在root下操作

第一步,下载好需要的httpd安装包,把它拖进root目录下载路径为http://httpd.apache.org/download.cgi 

记得检查下是不是安装过httpd如果有,先删除了,不然会端口冲突

第二步,配置yum源仓库

mkdir /media/cdrom/                         #挂载centos7镜像

mount /dev/cdrom /media/cdrom/     # 新建dev下的cdrom文件加 把刚刚的镜像挂载到这里

cd /etc/yum.repos.d/                        #进入yum源文件夹

mkdir bak                                        #新建一个bak文件夹做备份文件夹

mv C* bak/                                      #把当前目录所有C开头的文件都剪切进bak文件夹

cp bak/Centos-Media.repo ./          #在把bak里面的media配置文件拷到当前目录

vi CentOS-Media.repo                    #用vi编辑器修改配置中文件

把20行的enabled=0改成1

然后清理下yum源缓存,避免出现各种报错

yum clean all        #清理元数据缓存

在新建一个元数据缓存

yum makecache    #新建元数据缓存

这里如果报错检查yum源

 到此,yum源配置完成。

第三步,安装httpd服务

先安装httpd所需的依赖包

#安装gcc gcc-c++ make apr-util-devel pcre-devel  这一步如果报错也检查yum源

yum install -y gcc gcc-c++ make apr-util-devel pcre-devel   

然后解压httpd安装包

cd       #回到root根目录

tar zxvf httpd-2.4.50.tar.gz -C /usr/src       #解压httpd包到/usr/src目录 

基本所有第三方安装包都解压到这个目录,如果报错,看一下root家目录里面是不是没有httpd安装包。

然后进去解压目录

cd /usr/src/httpd-2.4.50      #进到解压目录

查看当前系统的环境是否能够安装该软件
./configure --prefix=/usr/local/httpd --enable-so --enable-rewrite --enable-charset-lite --enable-cgi
--enable-rewrite启用地址重写功能

--enable-so启用动态加载模块

--enable-charset-lite启用字符集功能

--enable-cgi启用cgi的脚本程序

然后检查下这条命令有没有问题

echo $?       #检查上条命令是否正常

然后编译安装

make && make install     

#make是编译的意思。就是把源码包编译成二进制可执行文件

#make install 就是安装的意思。

#&&是与,||是或

如果报错检查依赖包有没有安装成功。

没有报错就进入安装目录看下有没有安装成功

cd /usr/local/httpd/       #进入安装目录

bin     #存放各种执行文件,包括主程序

conf      #存放各种配置文件

htdocs     #存放网页文件

logs      #存放httpd服务的日志文件

modules      #存放各种模块文件

cgi-bin        #存放各种CGI程序文件

然后优化执行路径,因为编译安装的httpd服务,程序不在默认的搜索路径,为相关程序添加软连接,可以使用方便。

ln -s /usr/local/httpd/bin/* /usr/local/bin/         #创建软连接

ls -l /usr/local/bin/httpd /usr/local/bin/apachectl     #查看软连接是否创建成功

 创建httpd服务文件

cd /lib/systemd/system/          #进入目录

vi httpd.service               #创建服务文件

#[Unit]是定义启动顺序

#[service]是定义启动

#TYpe=forking     是启动方式为后台启动

 #PIDFILE是定义进程文件,后面是存放路径

 #ExecStart是用什么命令启动起来的后面是命令

#ExecReload是加载方式 这里是先kill掉进程在启动

#【install】是指定安装的配置文件以及设置,完成开机自启动

然后让上面的配置文件生效

systemctl daemon-reload                      #让配置文件生效

systemctl enable httpd                            #设置开机自启

然后修改HOSTS文件 进行主机映射,可以通过使用域名访问网站主机

vi /etc/hosts                                   #修改hosts文件

到此,httpd服务安装完成。

httpd服务器基本配置流程

1确定网站名字和IP地址

2配置并启动httpd服务

 3部署网页文档

4在客户机中访问Web站点

5查看Web站点访问情况

第四步,来配置httpd配置文件

cd /usr/local/httpd/conf/     #进去配置目录

动配置文件前一定要备份下,避免出问题了解决不了被kill了

cp /usr/local/httpd/conf/httpd.conf{,.bak}     #备份配置文件到当前目录,命名为.bak

然后修改配置文件

vi httpd.conf          #用vi编辑器打开httpd配置文件

:set nu    #出现行号

这里暂时只修改一个域名  配置文件的202行 ServerName这里设置成你需要的域名

:wq     #修改后保存退出配置文件

然后对比下和备份文件的不同处

diff httpd.conf httpd.conf.bak         #diff可以对比两个文件

然后检查下配置文件有没有问题

apachectl -t                         #检查配置文件有没有问题

这里出Syntax OK不保证一定没问题,但是不出OK是一定有问题的

 然后启动httpd服务

systemctl start httpd         #启动httpd服务

如果起不来检查httpd.conf配置文件

systemctl status httpd            #检查下是否启动

如果这个进程是死的或者启动失败,还是检查配置文件吧

netstat -anpt |grep httpd            #检查端口号 有没有启用

 到此httpd配置文件完,可以看到已经可以通过火狐浏览器访问刚刚设置的域名了

第五步,构建虚拟主机

虚拟web主机,在一台服务器中运行多个Web站点,其中每一个站点并不独立占用一台计算机

httpd支持的虚拟主机有三种类型,基于ip的虚拟主机,基于域名的虚拟主机,基于端口的虚拟主机。这次用搭建域名的虚拟主机。

1.准备站点文件。

设置两个不同的测试目录,

mkdir -p /var/www/html/aptech     #创建测试目录

mkdir -p /var/www/html/aptech2   #创建第二个测试目录

然后创建两个测试文件分别放到两个目录。

echo "<h1>www.aptech.com<h1>" > /var/www/html/aptech/index.html   

#创建第一个测试文件

echo "<h1>www.aptech2.com<h1>" > /var/www/html/aptech2/index.html

#创建第二个测试文件,也可以分别进入各自目录用vi编辑器创建,注意下命名要用index.html

然后用查看两个文件是否正常创建

cat aptech/index.html             #查看第一个文件

cat aptech2/index.html         #查看第二个文件

不要按照图片打命令,注意下路径

 2.修改虚拟主机配置文件

cd /usr/local/httpd/conf/extra/                #进去配置文件目录

vi httpd-vhosts.conf                                #修改配置文件

  

这里暂时只修改一个域名  配置文件的25行 ServerName这里设置成你需要的域名

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
好的,下面是centos7.9编译安装nginx的步骤: 1. 安装编译nginx所需的依赖库: ``` yum install -y gcc gcc-c++ autoconf automake zlib zlib-devel openssl openssl-devel pcre pcre-devel libxml2 libxml2-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxslt libxslt-devel gd gd-devel perl perl-devel perl-ExtUtils-Embed ``` 2. 下载nginx源码包: 可以到官网(https://nginx.org/en/download.html)下载最新的稳定版nginx源码包。 3. 解压源码包: ``` tar zxvf nginx-xxx.tar.gz ``` 4. 进入nginx源码目录,执行以下命令进行编译安装: ``` ./configure --with-http_stub_status_module --with-http_ssl_module make && make install ``` 其中,--prefix参数指定nginx安装目录,--with-http_stub_status_module参数启用状态页模块,--with-http_ssl_module参数启用SSL加密支持。 5. 配置nginx: 进入/usr/local/nginx/conf目录,编辑nginx.conf文件,进行配置。这里给出一个简单的配置文件示例: ``` user nginx; worker_processes 1; error_log /var/log/nginx/error.log warn; pid /var/run/nginx.pid; events { worker_connections 1024; } http { include /usr/local/nginx/conf/mime.types; default_type application/octet-stream; log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; access_log /var/log/nginx/access.log main; sendfile on; keepalive_timeout 65; server { listen 80; server_name localhost; location / { root /usr/local/nginx/html; index index.html index.htm; } error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/local/nginx/html; } } server { listen 443 ssl; server_name localhost; ssl_certificate /usr/local/nginx/conf/server.crt; ssl_certificate_key /usr/local/nginx/conf/server.key; ssl_session_cache shared:SSL:1m; ssl_session_timeout 5m; ssl_ciphers HIGH:!aNULL:!MD5; ssl_prefer_server_ciphers on; location / { root /usr/local/nginx/html; index index.html index.htm; } error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/local/nginx/html; } } } ``` 其中,listen参数指定监听端口,server_name参数指定域名,root参数指定网站根目录,ssl_certificate和ssl_certificate_key参数指定SSL证书和私钥文件路径。 6. 启动nginx: 进入/usr/local/nginx/sbin目录,执行以下命令启动nginx: ``` ./nginx ``` 7. 检查nginx是否启动成功: 执行以下命令查看nginx进程是否存在: ``` ps -ef | grep nginx ``` 执行以下命令检查nginx监听的端口是否打开: ``` netstat -tlnp | grep nginx ``` 如果输出类似以下内容,则说明nginx已经成功安装并启动: ``` tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN xxxx/nginx tcp 0 0 :::443 :::* LISTEN xxxx/nginx ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值