LAMP + Yii,并且隐藏Yii url的inde.php

来源:互联网 发布:手机淘宝注册时间 编辑:程序博客网 时间:2024/06/06 02:47

1、配置环境

(1)Ubuntu14.04 x86_64 [Kernel Version: 3.16.0-30-generic]

(2)Apache/2.4.7

(3)MySQL5.5

(4)PHP5.5.9

2、安装方式

暂不采用源码编译安装,使用apt-get install方式安装。以后为了满足自定义需求,最好做成deb安装包。

3、具体安装过程

(1)MySQL

     # apt-get install mysql-server php5-mysql##安装过程中会提示设置mysql的root用户密码

     #  mysql_install_db

     # mysql_secure_installation

     之后按照自己的需求选择安装,包括是否允许root用户远程连接。

(2)Aapche

# apt-get install apache2

(3)PHP

# apt-get install php5 libapache2-mod-php5 php5-mcrypt

如果想查询PHP相关的模块或者库,可以使用下面的命令:

# apt-cache search php5-


如果想了解某个模块的详细内容,可以使用下面的命令:

apt-cache show package_name


(4)Yii

去Yii官网下载Yii框架源码,解压缩与/var/www/目录下,并将文件名修改成yii。

我使用的是yii1.1.16版本。

4、配置
配置主要的目的是隐藏Yii框架url中的index.php;
(1)在你的工程根目录下新建.htaccess文件,添加一下内容
Options +FollowSymLinksIndexIgnore */* RewriteEngine on# if a directory or a file exists, use it directlyRewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d # otherwise forward it to index.phpRewriteRule . index.php
(2)使能Apache的mod_rewrite
查看Apache是否已经开启rewrite模块;
apache2ctl -M
若没有则开启
# a2enmod rewrite

之后重启Apache服务

# service apache2 restart

(3)保证.htaccess文件正常工作

需要在虚拟主机中设置AllowOverrideAll

在Aapche中的配置文件(/etc/apache2/apache2.conf )添加一下内容
Options Indexes FollowSymLinks MultiViewsAllowOverride AllOrder allow,denyallow from all

(4)Yii的路由设置

修改工程配置文件protected/config/main.php中的urlManager组件配置

'showScriptName'=>false,


如果想要url友好型,则将urlFormat设置为path;

'urlFormat'=>'path',



好,一切OK!开心使用你的项目。


0 0