LAMP环境的搭建(四)

时间:2022-10-22 12:57:01

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

 

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

 

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

 

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

LAMP环境的搭建(四)

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

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

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

LAMP环境的搭建(四)

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

LAMP环境的搭建(四)

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

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

 

LAMP环境的搭建(四)

这里指定了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的项目。

 

LAMP环境的搭建(四)

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

 

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

php artisan key:generate 

 

回到apache的配置文件

vi /etc/httpd/conf/httpd.conf

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

LAMP环境的搭建(四)

<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

 

LAMP环境的搭建(四)

发现了如下信息。 原来是 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,并赋予权限。

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