小白在 linux 系统部署apache、mysql、Laravel 环境学习笔记!
bigegpt 2024-10-12 06:02 13 浏览
在 linux 系统部署apache、mysql、Laravel 环境
一、在 CentOS 7.2 服务器下 部署 apache
yum clean all --- 功能是:清除系统垃圾
yum -y update ----功能是:执行系统更新
yum -y install httpd ----功能是:安装 Apache Web服务器软件
systemctl enable httpd.service ---- 功能是:设置 Apache 服务开机自动启动
systemctl start httpd.service ---- 功能是:启动 Apache 服务
配置虚拟主机
创建网站访问目录:
mkdir -p /var/www/edu.cloud.tencent.com/public_html ---功能是:创建 /var/www/edu.cloud.tencent.com/public_html 目录
修改对应的宿主、属主,以及权限
chown -r apache:apache /var/www/edu.cloud.tencent.com/public_html
chmod -r 755 /var/www ---功能是:修改/var/www 目录权限为:755
修改创建对应的配置文件
vim /var/www/edu.cloud.tencent.com/public_html/index.html ---功能是:创建首页 index.html文件
创建 Apache 配置文件
创建两个不同目录的Apache 配置文件,一个目录中存放所有 Apache 配置文件,另一个目录放置所有启用的虚拟主机的配置文件。
mkdir /etc/httpd/sites-available ---功能是:创建 sites-available 目录
mkdir /etc/httpd/sites-enabled ---功能是:创建 sites-enabled 目录
修改 Apache 的默认配置文件,来确保它可以加载所需要修改的文件。
vim /etc/httpd/conf/httpd.conf ---功能是:Apache 的默认配置文件在/etc/httpd/conf/目录下的httpd.conf 文件。
在文件底部加入代码:
IncludeOptional sites-enabled/*.conf ----功能是:使用 Apache 的 IncludeOptional 命令来加载 sites-enabled 目录下的 *.conf 文件夹。
保存退出
创建虚拟主机的配置文件
在 sites-available 目录下创建配置文件 edu.cloud.tencent.com.conf
使用软链接,链接到 sites-enabled 目录下
vim /etc/httpd/sites-available/edu.cloud.tencent.com.conf
添加代码:
<VirtuahHost *:80>
ServerName edu.cloud.tencent.com
DocumentRoot /var/www/edu.cloud.tencent.com/public_html
ErrorLog /var/www/edu.cloud.tencent.com/error.log
CustomLog /var/www/edu.cloud.tencent.com/requests.log combined
</VirtuahHost>
保存退出
ln -s /etc/httpd/sites-available/edu.cloud.tencent.com.conf /etc/httpd/sites-enabled/edu.cloud.tencent.com.conf ---功能是:使用 sites-available 目录下的 edu.cloud.tencent.com.conf 文件 和 sites-enabled 目录下的 edu.cloud.tencent.com.conf 文件进行链接
cat /etc/httpd/sites-enabled/edu.cloud.tencent.com.conf ---功能是:查看新生成的软链接是否正常,显示以上代码段属于正常。
检查 DocumentRoot 是否路径一致
cd /var/www/edu.cloud.tencent.com/public_html
ls --- 显示 index.html 则成功配置路径!
apachectl restart ---- 使用 Apache 命令 进行重启它
打开浏览器尝试访问 Apache 测试 edu.cloud.tencent.com 是否有显示 Apache 内容
总结:
在Linux 服务器上配置 Apache ,并尝试配置了虚拟主机。
其中有三个部分要点:
一、使用系统包管理器来安装 Apache
二、创建和修改 Apache 的配置文件
三、通过命令来重启 Apache
-----------------------------------------------------
二、在 CentOS 7.2 环境下配置 MySQL
安装完成后,一定注意配置 mysql 的密码,并进行 mysql_secure_installtion , 以免出现安全问题。
配置完成后,可以执行 show databases; 来查看 MySQL 是否配置成功。
首先更新系统:
yum update -y
在 CentOS 7.2 版本中使用了 mariadb-server 来替代了官方的 mysql 进行安装。所以
yum install mariadb-server -y --- 使用 mariadb-server 来安装 mysql
安装完成 mariadb-server 后,进行启动。
systemctl start mariadb.service --- 启动 mysql 数据库
设置安全配置
mysql_secure_installation
默认 root 密码是为空
提示:是否设置 root password 选 y
设置 new password 和 确认密码 re-enter new password
提示:是否要删除域名用户? 为安全起见,需要删除。
Remove anonymous users?[Y/N] : Y
提示:是否要关闭 root 远程用户的登陆?(若删除则保证 root 用户只能在本机服务器上执行操作)
Disallow root login remotely?[Y/N] : Y
提示:是否要删除测试数据库和相关的权限?
Remve test database and access to it?[Y/N] : Y
提示:是否要刷新权限表格?
Reload privilege tables now?[Y/N] : Y
完成了安装!
登陆 数据库
mysql -uroot -p ----功能是:-u 是使用 root 用户,-p 是使用密码。
show databases; ----功能是:查看 已有的数据库
use mysql ----功能是:返回运用 mysql
exit ----功能是:退出 数据库
总结:
在 Linux 服务器上配置 mysql , 并尝试管理数据库。
分三个部分要素:
一、安装 mysql
二、初始化 mysql
三、检测 mysql 状态
-----------------------------------------------------
三、Laravel 部署环境
在 apache、mysql 的基础上配置一个 Laravel 部署环境。
Laravel 部署环境的注意事项 —— 配置 Composer 的国内镜像,加速依赖的下载
Laravel 部署环境配置 —— 在 Linux 服务器上部署 Laravel 生产环境
在云服务器上已经配置好的 Apache 、mysql 数据库 ,需要配置 PHP 环境,配置版本 PHP 7 ,由于默认的仓库当中并不带PHP7 , 需要安装 第三方仓库.。
yum install epel-release
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm --- 再进行安装 webtatic-release 仓库,它包含了 PHP7 。
yum update --- 更新仓库列表
yum install -y php70w php70w-mysql php70w-mcrypt php70w-dom php70w-mbstring ----- 安装 PHP 7 等一系列拓展
curl -sS https://getcomposer.org/installer | php --- 下载安装 composer
mv composer.phar /usr/bin/composer ---- 将 composer.phar 移动到系统目录 的 /usr/bin/composer 目录下
chmod +x /usr/bin/composer ---- 对其添加 +x 可执行权限
composer -v ---- 执行 composer -v
在完成了 composer 的安装后,来配置国内镜像。
composer config -g repo.packagist composer https://packagist.phpcomposer.com ----执行国内镜像的安装命令,并对它进行配置。
配置 laravel 环境
cd /var/www --- 进入 /var/www 目录下,会展示的都是 apache 的目录文件
composer create-project laravel/laravel test ---- 在当前目录创建 laravel 项目,目录名设置为:test
ll ----功能是: 查看当前目录下的所有文件权限及所存在的文件名
cd test/ ----功能是:查看 laravel 文件
chown apache:apache -R test ---- 修改 apache 里的 test 目录权限,test 文件名和对应的目录权限就被设置给 apache 用户。
如图:
修改配置文件
cd /etc/httpd/conf ---- 进入 conf 文件夹
cat httpd.conf ---- 查看 httpd.conf 文件。
如图:
它引用了 conf.d 文件夹中的所有 *.conf 文件后缀的文件。
cd .. ---- 返回上级目录
cd conf.d/ -----进入 conf.d 文件目录
vim test.conf -----创建 test.conf 文件
添加代码:
<VirtuahHost *:80> # 虚拟主机标签
ServerName edu.cloud.tencent.com #设置域名
DocumentRoot "/var/www/test/public" #设置文件目录
</VirtuahHost> # 关闭虚拟主机标签
保存退出
systemctl restart httpd ---- 重启一下 apache
打开浏览器 输入: edu.cloud.tencent.com 检查是否正常显示页面!
总结:
在 Linux 服务器上配置 Laravel 生产环境,并尝试配置了虚拟主机。
有三个重点:
一、配置 php 7
二、配置 Composer
三、配置 Ccomposer 的国内镜像
相关推荐
- Go语言泛型-泛型约束与实践(go1.7泛型)
-
来源:械说在Go语言中,Go泛型-泛型约束与实践部分主要探讨如何定义和使用泛型约束(Constraints),以及如何在实际开发中利用泛型进行更灵活的编程。以下是详细内容:一、什么是泛型约束?**泛型...
- golang总结(golang实战教程)
-
基础部分Go语言有哪些优势?1简单易学:语法简洁,减少了代码的冗余。高效并发:内置强大的goroutine和channel,使并发编程更加高效且易于管理。内存管理:拥有自动垃圾回收机制,减少内...
- Go 官宣:新版 Protobuf API(go pro版本)
-
原文作者:JoeTsai,DamienNeil和HerbieOng原文链接:https://blog.golang.org/a-new-go-api-for-protocol-buffer...
- Golang开发的一些注意事项(一)(golang入门项目)
-
1.channel关闭后读的问题当channel关闭之后再去读取它,虽然不会引发panic,但会直接得到零值,而且ok的值为false。packagemainimport"...
- golang 托盘菜单应用及打开系统默认浏览器
-
之前看到一个应用,用go语言编写,说是某某程序的windows图形化客户端,体验一下发现只是一个托盘,然后托盘菜单的控制面板功能直接打开本地浏览器访问程序启动的webserver网页完成gui相关功...
- golang标准库每日一库之 io/ioutil
-
一、核心函数概览函数作用描述替代方案(Go1.16+)ioutil.ReadFile(filename)一次性读取整个文件内容(返回[]byte)os.ReadFileioutil.WriteFi...
- 文件类型更改器——GoLang 中的 CLI 工具
-
我是如何为一项琐碎的工作任务创建一个简单的工具的,你也可以上周我开始玩GoLang,它是一种由Google制作的类C编译语言,非常轻量和快速,事实上它经常在Techempower的基准测...
- Go (Golang) 中的 Channels 简介(golang channel长度和容量)
-
这篇文章重点介绍Channels(通道)在Go中的工作方式,以及如何在代码中使用它们。在Go中,Channels是一种编程结构,它允许我们在代码的不同部分之间移动数据,通常来自不同的goro...
- Golang引入泛型:Go将Interface「」替换为“Any”
-
现在Go将拥有泛型:Go将Interface{}替换为“Any”,这是一个类型别名:typeany=interface{}这会引入了泛型作好准备,实际上,带有泛型的Go1.18Beta...
- 一文带你看懂Golang最新特性(golang2.0特性)
-
作者:腾讯PCG代码委员会经过十余年的迭代,Go语言逐渐成为云计算时代主流的编程语言。下到云计算基础设施,上到微服务,越来越多的流行产品使用Go语言编写。可见其影响力已经非常强大。一、Go语言发展历史...
- Go 每日一库之 java 转 go 遇到 Apollo?让 agollo 来平滑迁移
-
以下文章来源于GoOfficialBlog,作者GoOfficialBlogIntroductionagollo是Apollo的Golang客户端Apollo(阿波罗)是携程框架部门研...
- Golang使用grpc详解(golang gcc)
-
gRPC是Google开源的一种高性能、跨语言的远程过程调用(RPC)框架,它使用ProtocolBuffers作为序列化工具,支持多种编程语言,如C++,Java,Python,Go等。gR...
- Etcd服务注册与发现封装实现--golang
-
服务注册register.gopackageregisterimport("fmt""time"etcd3"github.com/cor...
- Golang:将日志以Json格式输出到Kafka
-
在上一篇文章中我实现了一个支持Debug、Info、Error等多个级别的日志库,并将日志写到了磁盘文件中,代码比较简单,适合练手。有兴趣的可以通过这个链接前往:https://github.com/...
- 如何从 PHP 过渡到 Golang?(php转golang)
-
我是PHP开发者,转Go两个月了吧,记录一下使用Golang怎么一步步开发新项目。本着有坑填坑,有错改错的宗旨,从零开始,开始学习。因为我司没有专门的Golang大牛,所以我也只能一步步自己去...
- 一周热门
- 最近发表
- 标签列表
-
- mybatiscollection (79)
- mqtt服务器 (88)
- keyerror (78)
- c#map (65)
- xftp6 (83)
- bt搜索 (75)
- c#var (76)
- xcode-select (66)
- mysql授权 (74)
- 下载测试 (70)
- linuxlink (65)
- pythonwget (67)
- androidinclude (65)
- libcrypto.so (74)
- linux安装minio (74)
- ubuntuunzip (67)
- vscode使用技巧 (83)
- secure-file-priv (67)
- vue阻止冒泡 (67)
- jquery跨域 (68)
- php写入文件 (73)
- kafkatools (66)
- mysql导出数据库 (66)
- jquery鼠标移入移出 (71)
- 取小数点后两位的函数 (73)