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. Netty中的EventLoop和线程模型

    一.前言 在学习了ChannelHandler和ChannelPipeline的有关细节后,接着学习Netty的EventLoop和线程模型. 二.EventLoop和线程模型 2.1. 线程模型 线 ...

  2. sql中having、group by用法及常用聚合函数

    having是用在聚合函数的用法.当我们在用聚合函数的时候,一般都要用到GROUP BY 先进行分组,然后再进行聚合函数的运算.运算完后就要用到HAVING 的用法了,就是进行判断了. 注意:sele ...

  3. POI处理Excel中各种日期格式问题

    前不久写过一篇随笔<EXCEL解析之终极方法WorkbookFactory>,提到使用WorkbookFactory来处理Excel文件数据,最近发现一个问题就是这个办法不能很好的处理各种 ...

  4. Hibernate中的持久化类

    一.持久化类概述 就是一个JavaBean,这个JavaBean与表建立了映射关系.这个类就称为是持久化类. 简单理解为 持久化类=JavaBean+映射文件. 持久化类:是指其实例需要被Hibern ...

  5. 使用EHCache需要注意的几个问题(转)

    最近做一个小项目,需要对一批数据进行缓存,且要求持久化到磁盘.使用ehcache非常简单和直观,一般来说只需要配置ehcache.xml文件,接着直接使用@Cacheable, @Cacheput, ...

  6. 深入理解HashMap上篇

    前言: HashMap是Java程序员使用频率最高的用于映射(键值对)处理的数据类型.随着JDK(Java Developmet Kit)版本的更新,JDK1.8对HashMap底层的实现进行了优化, ...

  7. 15.app后端怎么设计用户登录方案

    在很多app中,都需要用户的登录操作.登录,就需要用到用户名和密码.为了安全起见,暴露明文密码的次数越少越好.怎么能最大程度避免泄露用户的密码呢?在登录后,app后端怎么去验证和维持用户的登录状态呢? ...

  8. FreeRTOS数据结构(一)--链表和链表项

    结构体定义 /*链表结构体*/ typedef struct xLIST { listFIRST_LIST_INTEGRITY_CHECK_VALUE /*用于链表完整性检查*/ configLIST ...

  9. txn.go

    package clientv3 import (     "sync"     pb "github.com/coreos/etcd/etcdserver/etcdse ...

  10. ANSI 和 UNICODE 的函数对应表

    ANSI        UNICODE           通用(char.h)    (wchar.h)        (tchar.h) char         wchar_t         ...