1.下载Yii2

  https://www.yiichina.com/download

2.将解压后的文件放在指定的位置,这里是/home/www/yii/

3.安装apache2

sudo apt-get iinstall apache2

3.启动和查看apache2

启动:

sudo /etc/init.d/apache2 start

查看:

 ps -ef |grep "apache"

4.配置虚拟主机 www.feiquan.com

sudo touch /etc/apache2/sites-enabled/www.feiquan.com.conf
sudo vim/etc/apache2/sites-enabled/www.feiquan.com.conf
<VirtualHost *:>
ServerName www.feiquan.com
DocumentRoot /home/www/yii/web
<Directory " /home/www/yii/web">
Require all granted
Allow from all
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php
</Directory>
</VirtualHost>

5.配置hosts文件(记得这里是hosts不是host)

ifconfig

得到IP地址 192.168.0.100

sudo vim /etc/hosts

在其中添加IP和域名

192.168.0.100  www.feiquan.com

6.重启apche2服务(失败)

sudo /etc/init.d/apache2 start

 需要启动apache2的rewrite模块

sudo a2enmod rewrite

然后重启apche2服务

7.然后打开浏览器,查看www.feiquan.com

可以看到提示,是PHP语言

8.安装apache2的PHP模块

sudo apt-get install libapache2-mod-php

然后重启apache服务

9.打开浏览器刷新www.feiquan.com

然后可以看到YII的报错信息

10.设置cookieValidationKey

根据时间戳来生成cookieValidationKey

PHP -r "echo md5( time () );"

将生成的信息,复制到Yii2的解压目录下的,config\web.php 中,

刷新浏览器,www.feiquan.com

此时会展示,首页

11.改变路由规则

将web.php中的urlManager的注释去掉,在config目录下新建一个router.php路由文件,为了单独管理PHP的路由。然后将urlManager下的代码复制到router.php中,

router.php

<?php
return
[
'enablePrettyUrl' => true,
'showScriptName' => false,
'rules' => [
],
];

web.php

'urlManager' => require(__DIR__."/router.php"),

之后要修改文件路由的话直接改router.php文件

12.修改默认首页

修改路由规则:

router.php

<?php
return [
'enablePrettyUrl' => true,
'showScriptName' => false,
'rules' => [
"/"=>"/default/index"
],
];

在controllers文件夹下新建默认首页:

DefaultController.php

<?php

namespace app\controllers;

use yii\web\Controller;

class DefaultController extends Controller
{
public function actionIndex(){
return "index";
}
}

访问www.feiquan.com

Ubuntu安装apache+Yii2的更多相关文章

  1. Ubuntu安装Apache+PHP

    1.Ubuntu 安装Apache 安装Apache sudo apt-get install apache2 修改端口号 打开 etc/apache2/port.config 修改 port 80 ...

  2. Ubuntu安装Apache

    在虚拟机上安装了Ubuntu13.10 ,然后使用命令 sudo apt-get install apache2 安装apache总提示“E: 未找到软件包...”,不知所踪,这可能是新手容易的犯 的 ...

  3. linux -- ubuntu 安装apache后,修改默认路径

    默认由apt方式安装的Apache,指定网页主目录位于:/var/www 而系统/var所分到的空间太少,所以要换路径 1.修改默认网站目录 ubuntu8.10下修改apache2的默认文档目录 默 ...

  4. Ubuntu安装Apache 2.4.7常见问题解答

    环境:Apache 2.4.7 on Ubuntu 14.04 启动apache服务报错:Unknown Authz provider: ip 进入mod模块目录 cd /etc/apache2/mo ...

  5. ubuntu 下安装 apache php mysql

    ubuntu 安装 apache+php+mysql1.打开终端,输入“sudo apt-get install apache2”,回车;(安装apache2.0或2.x新版本,系统会自动查找新的版本 ...

  6. Ubuntu杂记——Apache+PHP+MySQL的安装

    昨天晚上,参考博客园的另一篇文章,在自己的Ubuntu上搭建了一个Apache+PHP+MySQL的服务器,在此谨记,以备不时之需. 一.安装Apache sudo apt-get install a ...

  7. Ubuntu下Apache的安装

    Ubuntu下可快速安装LAMP server(Apache+MySQL+PHP5),参见<Ubuntu下快速安装LAMP server>一文. 也可以手动安装Apache.本文介绍如何手 ...

  8. 在Ubuntu下安装Apache

    在Ubuntu下安装软件其实非常方便,Ubuntu提供了apt-get工具,可以使用该工具直接下载安装软件. 在Linux里,系统最高权限账户为root账户,而默认登录的账户并非root账户,例如不具 ...

  9. 记录在Ubuntu 18.04系统中安装Apache, MySQL和PHP环境

    虽然我们在Linux VPS.服务器安装WEB环境比较方便,可以选择面板或者一键包,但是有些我们需要深入学习的网友不会选择一键安装,而是会尝试编译安装.这样可以学到一些内在的技术.一般我们较为习惯选择 ...

随机推荐

  1. namespace------------https://www.cnblogs.com/linhaifeng/p/6657119.html

    PHP支持两种抽象的访问当前命名空间内部元素的方法,__NAMESPACE__ 魔术常量和namespace关键字. 常量__NAMESPACE__的值是包含当前命名空间名称的字符串.在全局的,不包括 ...

  2. PAT1113: Integer Set Partition

    1113. Integer Set Partition (25) 时间限制 150 ms 内存限制 65536 kB 代码长度限制 16000 B 判题程序 Standard 作者 CHEN, Yue ...

  3. SSM-Spring-22:Spring+Mybatis+JavaWeb的整合

    ------------吾亦无他,唯手熟尔,谦卑若愚,好学若饥------------- 众所周知,框架Spring来整合别的框架,但是Mybatis出现的晚,Spring就没有给他提供支持,那怎么办 ...

  4. SSM-MyBatis-12:Mybatis中添加单个对象返回主键id列

    ------------吾亦无他,唯手熟尔,谦卑若愚,好学若饥------------- 实体类 public class Book { private Integer bookID; private ...

  5. union 的两个用处

    1 节约内存: 这一功能可以参考我的其它博文: https://i.cnblogs.com/EditPosts.aspx?postid=8545190&update=1 2 测试机器大小端: ...

  6. js实现html截图生成图片

      没有华丽的开场,直入主题,这就是题主随笔风格.随笔既是日常工作积累,也可理解是个工作笔记,方便日后用到之处快速的有方可寻.   先讲一个需求场景: 定制网页截图传给服务器端保存,用户关注公众号后自 ...

  7. Doctype作用?标准模式与兼容模式各有什么区别?

    Doctype作用?标准模式与兼容模式各有什么区别? DOCTYPE是document type(文档类型)的简写,用来告诉浏览器的解析器使用哪种HTML或XHTML规范解析页面.DOCTYPE不存在 ...

  8. Python-分支循环- if elif for while

    分支与循环 条件是分支与循环中最为核心的点,解决的问题场景是不同的问题有不同的处理逻辑.当满足单个或者多个条件或者不满足条件进入分支和循环,这里也就说明这个对相同问题处理执行逻辑依据具体参数动态变化, ...

  9. admin-handlers.go

    package],,) ],,) ],,) ],,) ],,) ])     if err == redis.Nil {         http.NotFound(w, r)     } else ...

  10. VS编译代码未通过,常见问题。

    问题一:LNK2028 这个问题一般是什么函数在哪里被引用.修改的方法是:先检查是否包含头文件,如果已经包含了头文件,则检查在源文件的"import.cpp"中是否包含了该lib文 ...