PHP 项目迁移至新环境中 | 学习笔记

简介: 快速学习 PHP 项目迁移至新环境中

开发者学堂课程【阿里云上搭建 LAMP 环境实战:PHP 项目迁移至新环境中】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/663/detail/11094


PHP 项目迁移至新环境中

 

内容介绍

一、项目移植

二、问题解决

 

一、项目移植

1、项目拷贝

把 php 项目拷贝刀网站默认目录下,

/usr/local/apache2/htdocs/**

2、数据库使用

使用 phpMyAdmin 创建网站所需数据库(注意目录权限和归属,防止权限过大或过小,修改配置文件之前一定要备份一个版本)

3、项目安装

从学习猿地的“猿代码”中找到 php 项目下载一个 blog 项目,以“简单的blog项目源码”为例,将其下载到当前目录下,输入 wget ,并粘贴,解析过后输入 clear 回车,输入 unzip 进行解包,ls 回车, ls 回车,接着 clear 回车, ls 回车,输入 cp-a blog /usr/local/apache2/htdocs/ ,cd /usr/local/apache2/htdocs/ 接着 ls 回车, cd 回车,得到此项目的全部文件,将其拷贝到阿帕奇发布项目的目录下。经过验证发现此时直接访问是行不通的,因为有很多的的文件尚未配置。

此时新建一个目录,执行 /blog/public/index.php 我们根据显示的错误进行一步步的修改。

 

二、问题解决

1、权限的获取

找到安装的文档并执行,输入 ls 回车, clear 回车,再输入 vi readme.md 回车到达安装文档, ql 回车输入 chmod -R 777 storage/回车, chmod -R 777 bootstrap/cache/回车执行, 允许 storage 目录和 bootsstrap/cache 目录 Web 服务器写入,即可运行,可以发现此时错误改变。

2、数据库的创建

在 phpMyAdmin 中创建并命名 blog 打开下载目录并将其解压到当前目录下,用 phpMyAdmin 执行 blog.sql 即可,打开 phpMyAdmin 在数据库里导入,选择文件夹 blog ,导入文件 blog 执行成功后,执行了74个查询,此时执行任然是不可行的,继续观察安装的配置。

3、虚拟主机的创建

返回新建会话,修改 .env 用户名,输入 vi .env 回车,

运行此项目发现没有图片,我们需要创建一个 Apache 虚拟主机,指向

./blog/public ,返回新建会话,输入 vi

/usr/local/apache2/etc/httpd.conf 回车执行,找到 htdocs,前面提到发布网站的目录可以随意更改,

将其指定到 /plog/public/ ,原来的目录保留,将新做的目录指定到目的位置,

回到新建会话输入 /usr/local/apache2/bin/apachectl stop 执行,输入 /usr/local/apache2/bin/apachectl start 执行并刷新

删掉网址中的 /blog/public/ ,执行后图片即可显示。

4、配置文件的修改

文件里也有后台如何登录,在新建会话中输入 vi readme.md 找到后台用户名与密码,但在尝试登录 /admin/login/ 后台时出现错误,

## Web 服务器配置

### Apache

使用 public/.htaccess 文件来为前端控制器提供隐藏了 index.php 的优雅链接。

如果你的 Laravel 使用了 Apache 作为服务器,请务必启用 mod rewrite 模块,让服务器能够支持 .htaccess 文件的解析。

如果 blog 附带的 .htaccess 文件不起作用,就尝试用下面的方法代替:

Options +FollowSymLinks

RewriteEngine On

RewriteCond  (REQUEST_FILENAME) !-d

RewriteCond  (REQUEST_FILENAME) !-f

RewriteRule  index.php (L)

判断为此文件未生效,需更改阿帕奇配置文件使错误文件生效,输入 /usr/local/apache2/etc/httpd.conf 执行,找到新做的指定文本目录下方,将 AllowOverride 后边的 none 改为 All 才可以找到指定目录文件。

image.png

此文件才为有效文件。

5、登录

修改完毕重启阿帕奇,输入 /usr/local/apache2/bin/apachectl stop 执行,输入 /usr/local/apache2/bin/apachectl start 执行进入后台管理登陆页面,用户名 admin ,密码123456,输入验证码进入后台管理。

相关文章
|
3月前
|
存储 Java 数据库连接
php学习笔记-代码基本语法-day01
本文是关于PHP编程语言的基础语法学习笔记,内容包括PHP的介绍、注释风格、数据类型、命名规范、常量和变量的使用,以及变量和常量相关的常用函数。文中详细解释了PHP的基本语法元素和一些易混淆的概念,如传值赋值与传址赋值、可变变量,以及如何检查变量是否已定义或为空。
php学习笔记-代码基本语法-day01
|
3月前
|
JavaScript 前端开发 安全
php学习笔记-普通表单参数提交获取及页面的重定向和一个登录小demo-day05
本文介绍了PHP中普通表单参数的提交获取、页面重定向的方法,并通过一个登录示例演示了表单参数的封装和页面跳转处理。
|
22天前
|
SQL 安全 JavaScript
在多用户环境中,如何确保 PHP Shell 的安全性?
在多用户环境中确保 PHP Shell 安全,需采取限制执行环境、禁用危险函数、使用安全模式、采用 `suPHP` 或 `PHP-FPM`、使用参数化查询、输入验证、转义命令、强化会话管理、合理配置错误处理、正确设置文件权限及定期更新等措施。这些策略有助于防范潜在的安全威胁。
|
3月前
|
存储 缓存 数据处理
php学习笔记-php会话控制,cookie,session的使用,cookie自动登录和session 图书上传信息添加和修改例子-day07
本文介绍了PHP会话控制及Web常用的预定义变量,包括`$_REQUEST`、`$_SERVER`、`$_COOKIE`和`$_SESSION`的用法和示例。涵盖了cookie的创建、使用、删除以及session的工作原理和使用,并通过图书上传的例子演示了session在实际应用中的使用。
php学习笔记-php会话控制,cookie,session的使用,cookie自动登录和session 图书上传信息添加和修改例子-day07
|
3月前
|
存储 API PHP
php学习笔记-php数组的创建和使用,数组常用函数-day03
关于PHP数组的创建、使用以及常用函数的详细学习笔记。
php学习笔记-php数组的创建和使用,数组常用函数-day03
|
3月前
|
JavaScript Java PHP
php学习笔记-php运算符,类型转换,打印输出语句相较于其他语言的特殊部分-day02
本文是第二天的PHP学习笔记,涵盖了PHP中运算符的使用、类型转换方式,以及打印输出语句的特点,展示了其相较于其他编程语言的一些特殊之处。
php学习笔记-php运算符,类型转换,打印输出语句相较于其他语言的特殊部分-day02
|
3月前
|
域名解析 关系型数据库 MySQL
基于PHPEnv的本地环境搭建—PHP第一个项目:HelloWorld(从安装到运行)
该文章指导如何使用PHPEnv搭建本地PHP开发环境,并通过一个简单的"Hello World"程序演示从安装到运行的全过程。
基于PHPEnv的本地环境搭建—PHP第一个项目:HelloWorld(从安装到运行)
|
3月前
|
SQL 关系型数据库 MySQL
php学习笔记-连接操作mysq数据库(基础)-day08
本文介绍了PHP中连接操作MySQL数据库的常用函数,包括连接服务器、设置字符集、关闭连接、选择数据库、结果集释放、获取影响行数以及遍历结果集等操作。通过书籍查询的实例演示了如何使用这些函数进行数据库操作,并提供了一个PHP操纵MySQL数据库的模板。
php学习笔记-连接操作mysq数据库(基础)-day08
|
3月前
|
前端开发 PHP
php学习笔记-php文件表单上传-day06
本文介绍了PHP文件上传处理流程、预定义变量`$_FILES`的使用、文件上传状态代码以及文件上传实现函数。同时,通过一个文件上传的小例子,演示了文件上传表单的创建、文件上传表单处理的PHP页面编写以及运行测试输出。
php学习笔记-php文件表单上传-day06
|
3月前
|
JavaScript 程序员 PHP
php学习笔记-php自定义函数-day05
本文介绍了PHP自定义函数的创建、调用、参数赋值以及作用域和生命周期,还探讨了`global`和`static`关键字的使用,以及`return`、`exit`和`die`的不同用法。