首先要在服务器配置(httpd.conf)中开启重写模块:
#开启重写模块,将其前面的#去掉 LoadModule rewrite_module modules/mod_rewrite.so #Directory中允许覆盖开启 <Directory "${SRVROOT}/htdocs"> # # Possible values for the Options directive are "None", "All", # or any combination of: # Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews # # Note that "MultiViews" must be named *explicitly* --- "Options All" # doesn't give it to you. # # The Options directive is both complicated and important. Please see # http://httpd.apache.org/docs/2.4/mod/core.html#options # for more information. # Options Indexes FollowSymLinks # # AllowOverride controls what directives may be placed in .htaccess files. # It can be "All", "None", or any combination of the keywords: # Options FileInfo AuthConfig Limit # AllowOverride All # # Controls who can get stuff from this server. # Require all granted </Directory>
(推荐教程:yii框架)
在目录下加入服务器配置文件.htaccess
RewriteEngine on ############################### # @email test@test.com # @author test ############################### #重写规则 #如果是一个目录或者文件,就访问目录或者文件 RewriteCond %{REQUEST_FILENAME} !-d #如果文件存在,就直接访问文件,不进行下面的RewriteRule RewriteCond %{REQUEST_FILENAME} !-f RewriteRule . index.php
在框架配置项frontendconfigmain.php中加入urlManager配置项
'urlManager' => [ 'enablePrettyUrl' => true, 'showScriptName' => false, //'suffix' => '.html',//URL后缀],