dreaminto
(Dreaminto)
1
经自己的实践,总结一下隐藏index.php文件的步骤
1.开启apache的mod_rewrite模块
去掉LoadModule rewrite_module modules/mod_rewrite.so前的“#”符号
确保<Directory "…"></Directory>中有“AllowOverride All”
2.在项目中的/protected/config/main.php中添加代码:
'components'=>array(
…
'urlManager'=>array(
'urlFormat'=>'path',
'showScriptName'=>false,//注意false不要用引号括上
'urlSuffix'=>'.html',
'rules'=>array(
'sites'=>'site/index',
),
),
…
),
3.在与index.php文件同级目录下添加文件“.htaccess”,内容如下:
Options +FollowSymLinks
IndexIgnore /
RewriteEngine on
# if a directory or a file exists, use it directly
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
# otherwise forward it to index.php
RewriteRule . index.php
这样就可以实现隐藏index.php入口文件了。
第一次发贴,有不对的地方,请大家指正。
Leric
(Leric Zhang)
8
分享一下我这儿的nginx下的配置吧:
server {
listen 80;
server_name .yeegt.com;
charset utf-8;
location / {
root /home/yeegt/yiigt;
index index.php;
try_files $uri $uri/ /index.php?$args;
}
location ~ ^/protected/ {
deny all;
}
# redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
location ~*.(js|jpg|jpeg|gif|png|ico)$ {
root /home/yeegt/yiigt;
expires 356d;
}
location ~ \.php$ {
root /home/yeegt/yiigt;
fastcgi_pass 127.0.0.1:9010;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /home/yeegt/yiigt$fastcgi_script_name;
include fastcgi_params;
set $path_info $request_uri;
if ($request_uri ~ "^(.*)(\?.*)$") {
set $path_info $1;
}
fastcgi_param PATH_INFO $path_info;
}
}
服务器环境是nginx + php5.3 fpm
域名信息就不改啦,也欢迎大家来看看
nettrinity
(Thanhvn Info)
10
请问你发的这个是什么啊? 干什么用的?为什么这么复杂?
hiscaler
(Hiscaler)
13
看来 iis 不受待见啊。呵呵。我来分享一下:
[ISAPI_Rewrite]
RewriteRule /(?!static)(?!assets)(?!themes)(?!uploads)(.*)$ /index\.php [I,L]
复制之后保存成 httpd.ini放到根目录下就可以了。当然你的 iis 得安装 rewrite 组件。
lugal
(Lugal Cn)
16
yuanchensi
(253176704)
17
IIS 插件 ISAPI Rewrite最新版支持APACHE的
IndexIgnore / 隐藏index.php
可以用这种方法