Linux运维常用服务安装

常用服务

Apache服务

1.安装

systemctl stop firewalld      关闭防火墙
setenforce 0                  关闭内核防火墙
yum -y install httpd          安装apache服务
netstat  -tnpl                查看监听的端口

2.目录

/etrc/httpd/下的目录模块
conf        存储配置文件
conf.d      存储配置子文件
logs   			存储日志 (访问日志:access_log   错误日志:error_log)
modules 		存储模块
run    			存储Pid文件,存放的pid号码。是主进程号

发布目录
index.html:默认主页名称
默认发布网站的目录:/var/www/html
系统产生apache账户,家目录是:/var/www

3.主配置文件

ServerRoot "/etc/httpd"             #工作目录
Listen 80                           #监听端口
Listen 192.168.2.8:80               #指定监听的本地网卡 可以修改
User apache    					    # 子进程的用户,有可能被人改称www账户
Group apache   						# 子进程的组
ServerAdmin root@localhost  		# 设置管理员邮件地址
DocumentRoot "/var/www/html"        # 发布网站的默认目录,想改改这里。
IncludeOptional conf.d/*.conf       # 包含conf.d目录下的*.conf文件

# 设置DocumentRoot指定目录的属性
<Directory "/var/www/html">   		# 网站容器开始标识
    Options Indexes FollowSymLinks  # 找不到主页时,以目录的方式呈现,并允许链接到网站根目录以外
    AllowOverride None              # 对目录设置特殊属性:none不使用.htaccess控制,all允许
    Require all granted             # granted表示运行所有访问,denied表示拒绝所有访问
</Directory>    					# 容器结束
DirectoryIndex index.html      		# 定义主页文件,当访问到网站目录时如果有定义的主页文件,网站会自动访问

4.访问控制

配置文件: /etc/httpd/conf/httpd.conf
编辑配置
<Directory "/var/www/html">
    Options Indexes FollowSymLinks
    AllowOverride None
    Require all granted <------------主要修改这里来进行控制访问
    <RequireALL>
        Require all granted
        ...
    </RequireALL>

</Directory>

权限访问:
Require  all  granted           所有人都可以访问     
Require  all  denied            所有人不让访问
Require  not  ip  [ip地址]       某个ip不能访问

5.虚拟主机

/etc/httpd/conf.d/[文件名称].conf

临时增加ip地址

ifconfig     ens33:[数字]      [增加的ip地址]
ifconfig     ens33:[数字]      [增加的ip地址]  down          删除ip地址
ip addr add 192.168.2.199/24 dev eth0:0
水
(1).域名
1.编辑配置文件/etc/httpd/conf.d/[文件名称].conf
<VirtualHost [ip地址]:80>
    DocumentRoot [发布目录]
    ServerName [发布域名]         #定义域名
    <Directory  '[发布目录]'>
        AllowOverride None 
        Require all granted
    </Directory>

</VirtualHost>

2.创建发布目录
mkdir [发布目路径]	
3.创建发布文件
vim  [发布目录路径]/index.html
4.重启httpd
5.修改windows的hosts文件添加ip 和发布域名
(2).端口
1.编辑主配置文件/etc/httpd/conf/httpd.conf
listen 80
listen 81
...
2.编辑配置文件/etc/httpd/conf.d/[文件名称].conf
<VirtualHost [ip地址]:[端口号]>    #修改此处端口号
    DocumentRoot [发布目录]
    #ServerName [发布域名]
    <Directory  '[发布目录]'>
        AllowOverride None 
        Require all granted
    </Directory>

</VirtualHost>

3.创建发布目录
mkdir [发布目路径]
4.创建发布文件
vim  [发布目录路径]/index.html
5.重启httpd
systemctl restart httpd
6.修改windows的hosts文件添加ip 和发布域名
(3).ip
1.编辑配置文件/etc/httpd/conf.d/[文件名称].conf
<VirtualHost [ip地址]:80>          #定义ip地址
    DocumentRoot [发布目录]
    <Directory  '[发布目录]'>
        AllowOverride None 
        Require all granted
    </Directory>

</VirtualHost>

2.创建发布目录
mkdir [发布目路径]
3.创建发布文件
vim  [发布目录路径]/index.html
4.重启httpd

Nginx服务(nginx.org)

1.yum安装

1.编辑nginx.repo仓库
[nginx]
name=nginx
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=0
enabled=1
2.安装nginx
yum -y install nginx
3.查看配置文件(虚拟主机配置文件/nginx.conf)
cat /etc/nginx/conf/default.conf (主要修改这个)
cat /etc/nginx/nginx.conf
4.启动服务
systemctl start nginx

2.编译安装

  • 安装编译 Nginx 依赖包(创建编译环境)
yum -y install gcc gcc-c++ make zlib-devel pcre pcre-devel openssl-devel perl-devel perl-ExtUtils-Embed gd-devel
  • 下载安装包
wget http://nginx.org/download/nginx-1.26.0.tar.gz
  • 创建用户
useradd -s /sbin/nologin -M nginx
  • 解压编译
tar zxvf nginx-1.26.0.tar.gz -C /usr/local/

/usr/local/nginx-1.26.0/目录下执行:
./configure \
--user=nginx \
--group=nginx \
--prefix=/usr/local/nginx \
--conf-path=/etc/nginx/nginx.conf \
--sbin-path=/usr/sbin/nginx \
--error-log-path=/var/log/nginx/nginx_error.log \
--http-log-path=/var/log/nginx/nginx_access.log \
--pid-path=/usr/local/nginx/run/nginx.pid
  • 安装
/usr/local/nginx-1.26.0/目录下执行:
make && make install
  • 系统添加nginx服务
vim /usr/lib/systemd/system/nginx.service

添加:
[Unit]
Description=nginx
After=network.target

[Service]
Type=forking
ExecStart=/usr/sbin/nginx
ExecReload=/usr/sbin/nginx -s reload
ExecStop=/usr/sbin/nginx -s quit
PrivateTmp=true

[Install]
WantedBy=multi-user.target



tips:
[Unit]:服务的说明
Description:描述服务
After:描述服务类别
[Service]服务运行参数的设置
Type=forking是后台运行的形式
ExecStart为服务的具体运行命令
ExecReload为重启命令
ExecStop为停止命令
PrivateTmp=True表示给服务分配独立的临时空间
注意:[Service]的启动、重启、停止命令全部要求使用绝对路径
[Install]运行级别下服务安装的相关设置,可设置为多用户,即系统运行级别为3
  • 启动nginx
pkill nginx
systemctl daemon-reload 
systemctl start nginx

PHP服务安装

1.编译安装

  • 编译环境和依赖库安装
yum -y install gcc gcc-c++ glibc automake autoconf libtool make

yum -y install libxslt-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5-devel libidn libidn-devel openssl openssl-devel
  • 创建安装目录
mkdir -p /usr/local/php7
  • 升级cmake
移除cmake:
yum remove cmake -y
上传cmake或下载:
rz or curl -O https://cmake.org/files/v3.6/cmake-3.6.0-Linux-x86_64.tar.gz
解压:
tar xzvf cmake-3.6.0-Linux-x86_64.tar.gz
添加环境变量:
echo "export PATH=$PATH:/root/cmake-3.6.0-Linux-x86_64/bin" >> /etc/profile
vim /etc/profile
添加export PATH=$PATH:/root/cmake-3.6.0-Linux-x86_64/bin
source /etc/profile
  • 安装libzip
下载或上床:
wget https://libzip.org/download/libzip-1.5.2.tar.gz or rz
解压:
tar -xzvf libzip-1.5.2.tar.gz
创建建立目录
mkdir /root/libzip-1.5.2/build -p
编译
cd /root/libzip-1.5.2/build
cmake ..
安装
make install
  • 下载源码包
wget https://www.php.net/distributions/php-7.3.6.tar.gz 
  • 解压配置编译php
tar -xzvf  php-7.3.6.tar.gz  -C /usr/local/
cd /usr/local/php-7.3.6/
./configure \
    --prefix=/usr/local/php7 \
    --with-config-file-path=/usr/local/php7 \
    --with-config-file-scan-dir=/usr/local/php7/php.d \
    --enable-mysqlnd \
    --with-mysqli \
    --with-pdo-mysql \
    --enable-fpm \
    --with-fpm-user=nginx \
    --with-fpm-group=nginx \
    --with-gd \
    --with-iconv \
    --with-zlib \
    --enable-xml \
    --enable-shmop \
    --enable-sysvsem \
    --enable-inline-optimization \
    --enable-mbregex \
    --enable-mbstring \
    --enable-ftp \
    --with-openssl \
    --enable-pcntl \
    --enable-sockets \
    --with-xmlrpc \
    --enable-zip \
    --enable-soap \
    --without-pear \
    --with-gettext \
    --enable-session \
    --with-curl \
    --with-jpeg-dir \
    --with-freetype-dir \
    --enable-opcache
  • 解决off_t
vim /etc/ld.so.conf
添加
/usr/local/lib64
/usr/local/lib
/usr/lib
/usr/lib64 
生效
ldconfig -v 
  • 编译安装php
make && makeinstall
  • 创建php的初始化文件
cd /usr/local/php-7.3.6/
cp  php.ini-production /usr/local/php7/etc/php.ini
  • 配置php的配置文件
配置文件/usr/local/php7/etc/php.ini:
1371 session.save_path = "/tmp"打开注释

配置文件:/usr/local/php7/etc/php-fpm.conf:
cd /usr/local/php7/etc/
cp php-fpm.conf.default php-fpm.conf
vim  php-fpm.conf
修改并取消注释:pid = /var/run/php-fpm.pid

配置文件/usr/local/php7/etc/php-fpm.d/www.conf:
cd /usr/local/php7/etc/php-fpm.d/
cp www.conf.default www.conf
vim www.conf
修改配置
user = nginx
group = nginx
listen = 127.0.0.1:900
  • 设置profile
vim /etc/profile
最后一行添加
export PHP_HOME=/usr/local/php7
export PATH=$PATH:$PHP_HOME/bin:$PHP_HOME/sbin

source /etc/profile
  • 系统添加php-fpm服务
vim /lib/systemd/system/php-fpm.service
添加如下内容
[Unit]
Description=php-fpm
After=network.target

[Service]
Type=forking
ExecStart=/usr/local/php7/sbin/php-fpm
ExecStop=/bin/pkill -9 php-fpm
PrivateTmp=true

[Install]
WantedBy=multi-user.target
  • 启动php-fpm
pkill php-fpm
systemctl daemon-reload
systemctl start php-fpm

Nginx配置支持php

1.配置nginx

vim /etc/nginx/nginx.conf
配置文件:
server {
    listen 80;
    server_name localhost;
    location / {
       root /usr/local/nginx/html;
       index index.html index.htm index.php;              <----------- 添加搜索index.php文件
    }
    location ~ \.php$ {
        root /usr/local/nginx/html
        include fastcgi_params;        #指定nginx连接php-fpm的常量        <-------------添加
        fastcgi_pass 127.0.0.1:9000;    #连接php-fpm的地址和端口
        fastcgi_index index.php;        #指定默认页面
        fastcgi_param SCRIPT_FILENAME /usr/local/nginx/html$fastcgi_script_name; #指定站点根目录
    }
}

2.添加发布文件

vim /usr/local/nginx/html/index.php
文件:
<?php
phpinfo();
?>

3.重启配置

php:
systemctl restart php-fpm.service
nginx:
systemctl reload nginx
  • 8
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值