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. python识别图片文字

    因为学校要求要刷一门叫<包装世界>的网课,而课程里有200多道选择题,而且只能在手机完成,网页版无法做题,而看视频是不可能看视频的,这辈子都不可能看...所以写了几行代码来进行百度搜答案. ...

  2. MySql中innodb存储引擎事务日志详解

    分析下MySql中innodb存储引擎是如何通过日志来实现事务的? Mysql会最大程度的使用缓存机制来提高数据库的访问效率,但是万一数据库发生断电,因为缓存的数据没有写入磁盘,导致缓存在内存中的数据 ...

  3. Collections.synchronizedMap()、ConcurrentHashMap、Hashtable之间的区别

    为什么要比较Hashtable.SynchronizedMap().ConcurrentHashMap之间的关系?因为常用的HashMap是非线程安全的,不能满足在多线程高并发场景下的需求. 那么为什 ...

  4. Java 8 异常该进

    try-with-resources 这个特性是在JDK7中出现的,我们在之前操作一个流对象的时候大概是这样的: try { // 使用流对象 stream.read(); stream.write( ...

  5. linux几种定时函数的使用

    Linux定时函数介绍: 在程序开发过程中,我们时不时要用到一些定时器,通常如果时间精度要求不高,可以使用sleep,uslepp函数让进程睡眠一段时间来实现定时, 前者单位为秒(s),后者为微妙(u ...

  6. 基于opencv3.0下的运动车辆识别

    在opencv的初等应用上,对运动物体的识别主要有帧差或背景差两种方式. 帧差法主要的原理是当前帧与前一帧作差取绝对值: 背景差主要的原理是当前帧与背景帧作差取绝对值: 在识别运动车辆上主要需要以下9 ...

  7. CSS选择器详细总结

    一.基本选择器 序号 选择器 含义 1. * 通用元素选择器,匹配任何元素 2. E 标签选择器,匹配所有使用E标签的元素 3. .info class选择器,匹配所有class属性中包含info的元 ...

  8. Android 不规则图像填充 小玩着色游戏

    转载请标明出处: http://blog.csdn.net/lmj623565791/article/details/45788433: 本文出自:[张鸿洋的博客] 一.概述 近期群里偶然看到一哥们在 ...

  9. Javascript 进阶 面向对象编程 继承的一个例子

    Javascript的难点就是面向对象编程,上一篇介绍了Javascript的两种继承方式:Javascript 进阶 继承,这篇使用一个例子来展示js如何面向对象编程,以及如何基于类实现继承. 1. ...

  10. JFree图表

    ************************************************************************************* 使用JFree生成统计图片, ...