根据前文完成了LAMP基本环境的安装,那么接下来就是部署线上的环境了。

yum 安装的apache 目录存在于  /etc/httpd

apache最重要的文件就是 httpd.conf。  目录再 /etc/httpd/conf/httpd.conf

我们进入该文件。 vi /etc/httpd/conf/httpd.conf

#号开头的的 全部为注释,我们可以略过不看,

如上图,apache 的根目录是 /etc/httpd 如果下文使用的是相对路径,那么就自动与这个root关联在一起,这里是不能随便修改的。

apache监听了80号端口,80端口是web应用默认的端口。

这种形式的写法用于置顶该目录的权限,如图说明了软件根目录是拒绝访问的。

在这里我们看到了 apache设置的 项目根目录是 /var/www/html  并且设置了 项目根目录与其上级根目录的访问权限。

关于访问权限的参数这里就不详细讲了,可以在网上看到很多资料。

这里指定了apache访问目录是的默认首页,因为我们准备使用php,因此添加index.php  保存并退出。

修改完配置文件后 重启 apache服务器 service httpd restart

接下来进入 apache的项目根目录。 cd /var/www/html

我们编写一个测试文件

vim index.php

//内容如下

<?php

phpinfo();

?>

保存并退出。

如果一切正常的话,接下来我们就可以通过另外一台电脑在浏览器下 直接访问 我们编写的index.php的内容了

浏览器中输入  服务器域名 或者 ip地址。正常情况我们可以看到php的信息,这代表LAMP环境搭建顺利完成了。

如果浏览器中服务器报错, 那么应该检查 linux中防火墙是否开放80端口,阿里云控制台是否开放80端口,这里读者可以查阅相关信息完成。

那么接下来 我们搭建一个laravel项目试试。我们可以通过xftp软件直接向linux 的 /var/www/html目录下 传递一个laravel的项目。

如图 我把laravel文件改为laravel0 ,读者可以使用自己的文件名。

cd laravelO进行laravel项目的key初始化

php artisan key:generate

回到apache的配置文件

vi /etc/httpd/conf/httpd.conf

直接拉到文档最底部,添加我们的虚拟目录。

<VirtualHost *:80>

DocumentRoot "/var/www/html/laravelO/public"

SetEnv APPLICATION_ENV development

<Directory "/var/www/html/laravelO/public">

DirectoryIndex index.php

AllowOverride All

Order allow,deny

Allow from all

</Directory>

</VirtualHost>

如图 添加如上的虚拟路径信息保存并退出。

重启apache

service httpd restart

如果没意外,通过浏览器访问服务器应该可以看到 laravel的首页面了。

但是我部署的过程,出现了意外,访问不了。

在这里,我们应该学会如何查看错误日志。

查看apache的错误日志

cat /etc/httpd/logs/error_log

发现了如下信息。 原来是 laravel要求修改一个日记文件,但是apache没有权限去修改。

解决办法:

cd /var/www/html

chmod -R 777 laravel0    //修改laravel0项目及其所有的子目录权限最大,所有人都可以读写执行,不过这种办法通常带来安全隐患。

第二个办法:

chown -R apache:apache  laravel0

chmod -R 755 laravel0

原本laravel项目属于root用户,apache服务是通过apache用户运行的,因此apache没有修改laravel的权限。

我们把项目所属用户修改为apache,并赋予权限。

修改完成后通过浏览器就可以正常的访问了,如果还有问题,可以继续查看错误日志。

LAMP环境的搭建(四)----Apache下部署项目的更多相关文章

  1. [PHP] ubuntu16.04配置Lamp环境(搭建linux+apache+mysql+php7环境)

    reference : http://blog.csdn.net/Abyss_sliver/article/details/77621404 好久没有在Linux环境下进行开发了,比较常用的还是win ...

  2. LAMP环境的搭建

    [一些前言废话]一名web开发尤其是后端不懂LAMP环境的搭建,那就摊上事了,有些人说他一直用win下的wampServer这种傻瓜式环境搭建,用的挺好的,也有人说他用云服务器,搭配“一键搭建LAMP ...

  3. linux之lamp环境的搭建

    linux之lamp环境的搭建 1.安装lamp环境的安装工具 我们的lamp环境都是采用源码包进行编译安装: 编译安装需要工具gcc gcc-c++. 建议在线联网安装:yum  -install ...

  4. Linux:LAMP环境的搭建

    LAMP环境的搭建 安装DNS服务器 安装DNS服务 yum install bind -y DNS的配置 创建正向解析 以创建一个名为"lsy.com"的正向查找区域为例: 第一 ...

  5. maven也是apache下的项目

    maven也是apache下的项目,你看maven官网了,域名都在Apache下

  6. PHP学习记录第一篇:Ubuntu14.04下LAMP环境的搭建

    最近一段时间会学习一下PHP全栈开发,将会写一系列的文章来总结学习的过程,以自勉. 第一篇记录一下LAMP环境的安装 0. 安装Apache Web服务器 安装之前先更新一下系统 sudo apt-g ...

  7. lamp环境的搭建和安装

    最近,部门有些系统需要迁移到新的机器上,因此需要在新的机器上安装lamp和lnmp的环境,因此在这里总结一下: 一. 安装lamp环境的步骤:  (1).因为是新的机器,因此需要安装gcc的各种环境: ...

  8. <关于J2EE环境的搭建>在Fedora21下的Tomcat,Mysql,jdk以及Intellij的搭建过程

    题外话:一开始很不情愿写这种没有技术含量的博文,但是网上对于fedora21下的整个J2EE环境的搭建过程的文章实在是少之又少,那我就破个例吧:-p (一)JDK的下载及环境变量的设置 如果你对JDK ...

  9. tomcat下部署项目的流程和遇到的问题笔记

    简单部署流程: 1,解析域名关联到服务器ip 2,配置服务器jre运行环境 3,安装tomcat 4,项目打war包,放入tomcat根目录下webapps(tomcat默认加载的项目目录)目录下 5 ...

随机推荐

  1. BootLoader--改进(基于2440)

    BootLoader--改进 之前编写的Bootloader启动内核时间使用差不多7秒钟的时间,大多都是用在CPU将内核从Nandflash读取到SDRam中,故首先想到的方法是改变CPU时钟频率. ...

  2. 一个简单的时间轴demo

    一个时间轴的组成 使用一个块级元素包裹内容,并未块级元素设置边框 定义圆形或者菱形等元素标签,子元素设置偏移或者定位元素将图标定位到边框上 使其中的内容不溢出,自动换行,内容自动撑高 英文自动换行:w ...

  3. C# 调用.exe文件

    process da = new process(); da.startinfo.filename = @""D:\BM0002\BM0002.exe";  //要调用的 ...

  4. CSS预编译与PostCSS以及Webpack构建CSS综合方案

    CSS全称Cascading Style Sheets(层叠样式表),用来为HTML添加样式,本质上是一种标记类语言.CSS前期发展非常迅速,1994年哈肯·维姆·莱首次提出CSS,1996年12月W ...

  5. JavaScript中的设计模式:单例模式

    定义 单例模式就是一个类只能实例化一个对象,并且提供了一个访问它的全局访问点. 一般在实现登陆框,或者一个全局的控制器都会用到单例模式.现实中有window对象,线程池,全局缓存等. 简单实现 var ...

  6. HashMap TreeMap ConcurrentHashMap 源码

    1 HashMap java se 1.6 1.1 父类 java.lang.Object 继承者 java.util.AbstractMap<K,V> 继承者 java.util.Has ...

  7. 第2章 rsync算法原理和工作流程分析

    本文通过示例详细分析rsync算法原理和rsync的工作流程,是对rsync官方技术报告和官方推荐文章的解释. 以下是本文的姊妹篇: 1.rsync(一):基本命令和用法 2.rsync(二):ino ...

  8. Laravel 日志查看器 导入log-viewer扩展

    1.修改配置文件 config\app.php中  'log'=>'daily' 日志文件是按天生成的 2.在项目目录中composer命令安装扩展:composer require arcan ...

  9. (转)java之runnable jar与普通jar

    背景:项目中有时候需要导出相关的jar包,可是总是不能分清楚. 1 导出包 导出普通jar包(可作为第三方库,类似dll,so等) 在eclipse中右键选择except->java->j ...

  10. WebService中的WSDL详解 及jmeter测试

    首先简单讲解一下什么是wsdl.        一个WSDL文档通常包含8个重要的元素,即definitions.types.import.message.portType.operation.bin ...