Thinkphp 在 nginx 开启pathinfo 能不能不隐藏index.php

Thinkphp 在** nginx** 开启pathinfo 可以不隐藏 index.php吗?

比如
http://www.xxx.com/index.php/admin
http://www.xxx.com/admin
这两个域名我都能正常的访问我的后台。

2个回答

把thinkphp的 .htcess去掉试试

可以的,在nginx.conf配置文件或者自定义的文件下,修改一下location。将 下面代码的第一句修改成: location ~ .php($|/){
location ~ .php(.*)$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_split_path_info ^((?U).+.php)(/?.+)$;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
include fastcgi_params;
}

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
nginx支持thinkphp的pathinfo
现在发现问题有两个:rn1 不支持PATHINFO。rn localhost/?m=login可以访问,localhost/login不能访问。rn2 THINKPHP的U方法生成的地址错误。rn U('login/index')生成的地址是/login-index.html。rnrn[b]nginx配置文件:[/b]rnlocation ~ \.php$ rn root D:/AppServ/www;rn fastcgi_pass 127.0.0.1:9000;rn fastcgi_index index.php;rn fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;rn rn set $path_info "";rn set $real_script_name $fastcgi_script_name;rn if ( $fastcgi_script_name ~ "^(.+?\.php)(/.+)$" ) rn set $real_script_name $1;rn set $path_info $2;rn rn fastcgi_param SCRIPT_NAME $real_script_name;rn fastcgi_param PATH_INFO $path_info; rn rn include fastcgi_params;rn rnrn[b].htacess:[/b]rn rn RewriteEngine onrn RewriteRule ^(.*)$ index.php/$1 lastrn rnrn[b]nginx错误日志:[/b]rn 2014/10/27 13:54:42 [error] 5404#5668: *107 CreateFile() "D:/AppServ/www/login" failed (2: The system cannot find the file specified), client: 127.0.0.1, server: localhost, request: "GET /login HTTP/1.1", host: "localhost"rn
thinkphp隐藏index.php配置文件
<IfModule mod_rewrite.c> Options +FollowSymlinks -Multiviews RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*)$ index.php/$1 [...
thinkphp index.php隐藏问题
thinkphp index.php隐藏问题rnrn我已经用官方的方法已经将index.php隐藏成功了,为什么蜘蛛抓取的url,还有index.php,之前是没有的,现在突然又有了!rnrn例如:rnrn正确的应该是:www.xxx.com/product-8.htmlrnrn现在蜘蛛抓的是:www.xxx.com/index.php/product-8.htmlrnrn当然,在我网站上这两种url都可以访问。rnrn
nginx 修改配置文件使之支持pathinfo,且隐藏index.php
声明环境: nginx centos6.8 使用lnmp一键包搭建环境(2019年2月19日 ) 以前使用过别的办法去修改配置文件,但是过于繁琐,最近发现新版本中,在nginx 的 conf目录下发现了文件“enable-php-pathinfo.conf”,随后发现另外一种及其简单让nginx支持pathinfo的修改办法。 首先找到你的 nginx.conf 文件。 我本人使用的是一键环境,...
studyphp环境软件Nginx隐藏index.php和Pathinfo模式配置例子
studyphp环境软件Nginx隐藏index.php和Pathinfo模式配置例子 方法:打开nginx.cnf文件 将下面代码替换 # power by www.phpStudy.net #user nobody; worker_processes 1; #error_log logs/error.log; #error_log logs/error.log notic
apache 禁止目录访问
.htaccess 文件中添加   Options FollowSymlinks 例如:   Options FollowSymlinks   RewriteEngine On   RewriteCond %{REQUEST_FILENAME} !-d   RewriteCond %{REQUEST_FILENAME} !-f   RewriteRule ^(.*)$
thinkphp隐藏index.php以后500
系统linux+php5.3rntp3.1.2 rnrn按照TP的手册说修改 httpd.conf 的 mod_rewrite.so 模块分号rn然后还有 AllowOverride None 将None改为 All (这个地方在httpd.conf里面有5处,我都修改成了All,不知道是否是正确的,还是只是需要修改一处就可以了?)rnrnURL_MODEL设置为2 这个在配置文件里面也设置成了2,然后在写一个 ..htaccess 放在网站的根目录,内容如下rnrnrnRewriteEngine onrnRewriteCond %REQUEST_FILENAME !-drnRewriteCond %REQUEST_FILENAME !-frnRewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]rnrnrn然后重新启动httpd,结果提示 500 Internal Server Error ,开始我以为是我apache的问题,最后我看其他的网站又正常(这台linux有多个网站),最后把 .htaccess删除以后打开网站又恢复正常,如果在放.htaccess又出现问题,那就可以说明.htaccess有问题了,是不是这个里面的内容有问题呢,还是需要php.ini在设置其他的呢rnrnrn
配置thinkphp路由,隐藏index.php
开启rewrite模块 在ubuntu中,开启很简单,执行以下bash命令即可 1 sudo a2enmod rewrite 添加.htaccess支持 默认apache会忽视所有的规则重写,即使添加了.htaccess文件,他不认. 在ubuntu 14.04中设置,跟其他版本的ubuntu有点不同 核心操作还
thinkphp隐藏index.php 不隐藏admin.php
thinkphp开发的网站,在浏览时,怎么在URL中只去掉index.php,而admin.php地址显示?我现在一访问 项目/admin.php/login。跳转时,都是把admin.php 去掉。就加载不出模块了rnrnrn求助[img=https://forum.csdn.net/PointForum/ui/scripts/csdn/Plugin/003/monkey/5.gif][/img]
Nginx 服务器隐藏 index.php 配置
location / { try_files $uri $uri/ /index.php?$query_string; }
Nginx 隐藏入口文件 index.php
添加重写规则Nginxlocation / { index index.html index.htm index.php; #autoindex on; if (!-e $request_filename) { rewrite ^/(.*)$ /index.php/$1; } }
Nginx部署Thinkphp 404错误PathInfo的解决方案
  之前没有在意一直都是在Apache下部署,换成Nginx折腾了半天。终于搞定。     # # The default server # server { listen 80; server_name ** location / { root /www/; in...
解决thinkphp在不支持pathinfo的nginx上的问题
解决thinkphp在不支持pathinfo的nginx上的问题 2015年08月23日Linux暂无评论阅读 339 views 次 最近使用thinkphp和redis写了一个仿微博的一个小项目,但是当部署到nginx服务器上时竟然都是404,经过百度才发现是因为nginx是不支持pathinfo。于是在网上找到了解决方案: 在项目的配置文件中加入 location / {
nginx不支持pathinfo 导致thinkphp出错解决办法
1.网站504报错,不一定是服务器fastcgi,超时时间的问题也有可能是php连接数据库失败引起的超时问题导致504错误!!! 2.要清楚自己的你nginx服务器是否支持pathinfo模式,如果不支持 我们要修改nginx的配置使其支持 下面是修改nginx.conf使其支持pathinfo模式 location / { if (!-e $request_filename)
ThinkPHP:简单配置nginx使之支持pathinfo
首先放一张thinkphp5.1开发手册的截图: 可以看到在不支持PATHINFO的服务器中需要使用兼容模式来替代 现在给出一个简单配置nginx使之支持pathinfo的方法(注:该方法并没有配置隐藏入口文件) location ~ \.php { #去掉$ root H:/PHPServer/WWW; fastcgi_pass 12...
解决Nginx不支持ThinkPHP的PATHINFO模式
ThinkPHP支持通过PATHINFO和URL rewrite的方式来提供友好的URL,在Apache下只需要开启mod_rewrite模块就可以正常访问了,但是Nginx中默认是不支持PATHINFO的,出现如下错误     在nginx.conf文件增加如下配置 if (!-e $request_filename)    {     rewrite  ^/(.*)inde...
在Nginx上部署ThinkPHP,解决Pathinfo问题
在Nginx上部署ThinkPHP,解决Pathinfo问题 其实,要解决nginx不支持pathinfo的问题,有两个解决思路,一是不使用pathinfo模式,二是修改nginx的配置文件,使它支持pathinfo。为了使问题简单化,我选择了第一种方式,因为就第二种方式,我查了很多资料,发现大家的方法不尽相同,有的还差别很大,容易造成误导,所以我选择从简出发,选择普通模式,虽然
nginx 支持thinkphp pathinfo最简单的方法
默认情况下nginx是不支持pathinfo的。虽然说配置支持pathinfo不难,但是呢,网上的教程没几个可以用的,麻蛋我忙活了2天也没搞好这个最后用了一个最简单的方法解决了 把thinkphp的URL_MODE设置为3 就是下面这种风格index.php?s=/portal/index/test其实原来很简单 就是通过rewrite 首先先把index.php/XXX 后面的参数转成
ThinkPHP 在NGINX 中配置如何隐藏index.php文件
修改 nginx.conf 文件; 一共有两种方法 ,用那种都行 方法一 [code="php"] server { ... location / { index index.htm index.html index.php; #访问路径的文件不存在则重写URL转交给ThinkPHP处理 ...
宝塔面板nginx 开启pathinfo模式
其实很简单,配置下伪静态就可以了 或者
nginx开启pathinfo模式的两种方式
nginx开启pathinfo模式的两种方式
这段代码能不能把index.php输出?
$file="http://www.sina.com/index.php";rn $open=file($file);rnrn $count=count($open);rn for($i=0;$i<$count;$i++)rn rn $theget.=$open[$i];rn rnrnrn echo $theget;rnrn大家帮忙看看好么?rn
ThinkPHP中隐藏index.php文件路径的方法
把ThinkPHP中隐藏index.php文件的方法分享给大家,希望大家把ThinkPHP学得更好1
thinkphp阿里云虚拟主机隐藏index.php方法
&amp;lt;IfModule mod_rewrite.c&amp;gt; RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L] &amp;lt;/IfModule&amp;gt;
ThinkPHP框架中隐藏index.php无效解决方法
<IfModule mod_rewrite.c> Options +FollowSymlinks -Multiviews RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*)$ index.php?/$1 [QSA,PT,L
能不能不显示 ?
能不能不显示 ? 是换行的意思,我想在数据库里面有 的情况下不换行,但是其他的代码就有效,有没有办法?如果不能那直接就使HTML代码都不能用,可以么?
能不能不捕捉异常?
[size=24px]捕捉异常后,就会影响性能和速度。但是,如果不这样做,就会弹出那个可怕的对话框。例如:rnrn[color=#0000FF]tryrnrnrn decimal pp=decimal.Parse(TextBox1.Text)* decimal.Parse(TextBox2.Text); rn TextBoxResult.Text=pp.ToString(); rnrnrncatch(OverFlowException)rnrnTextBoxResult.Text=@"The result is too Large!";[/color]rnrnrn我想改为try...finally的形式,但是要保证不会弹出错误警告。rnrn请问如何修改代码?rnrn非常感谢![/size]
document.getelementbyid能不能不报错?
如果javascript找不到相应的ID,能不能让它不报错?
nginx开启pathinfo 以及nginx项目设置双入口文件问题
新项目使用的dolphinphp框架 dolphinphp框架设置了index.php前端入口文件个admin.php后台入口文件 在nginx服务器上各种坑! 首先dolphinphp框架要求服务器支持pathinfo模式 原本nginx配置如下: server { listen 80; server_name xxxxxx.com; ...
能不能不写代码实现程序启动任务栏图标的隐藏啊,
能不能不写代码实现程序启动任务栏图标的隐藏啊,rn 我建的是对话框程序,模式对话框
ThinkPHP5在nginx服务器上不支持pathinfo和出现404错误及隐藏index.php
ThinkPHP5在nginx服务器上部署,相信很多人都采坑了,其实我也不例外。 今天,我就说说在nginx服务器上遇到的问题 404出错和pathinfo的问题 在网站上找了很多资料,都是长篇大论的,而且很多都无法解决404这错误的提示 注: 在网站上很多都是更改nginx.conf【/usr/local/nginx/conf/nginx.conf】这个文件,我个人的习惯是根据当前站点进行配...
宝塔nginx配置文件伪静态,隐藏index.php
可以直接修改配置文件,如下图.找到/www/server/panel/vhost/rewrite/你的域名.conf 编辑这个文件,里面内容为 location / { if (!-e $request_filename){ rewrite ^(.*)$ /index.php?s=$1 last; break; } } 当然,也可以在宝塔后台,网站列表,设置中添加伪静态 ...
ci框架nginx如何隐藏index.php?
location /{ try_files $uri $uri/ /index.php?$uri&amp;amp;$args; }
apache与nginx下实现伪静态,隐藏index.php文件
1.伪静态的概念 伪静态是地址栏看起来是静态,改变了地址的表现形式,但是后台处理的还是动态页面。 2.伪静态的优缺点 优点:在SEO方面,伪静态和静态页面是一样的,由于搜索引擎比较喜欢收录静态页面,所以伪静态容易被搜索引擎收录;再一点就是为了安全,将一个网站的实现语言及路径隐藏起来,使网站的信息不暴露给外界。 缺点:由于伪静态是用正则实现的,正则表达式增加了服务器的负荷,使用了伪静态会使网...
Lnmp开启pathinfo模式
一,找到/usr/local/php/etc/php.ini 查找cgi.fix_pathinfo 将cgi.fix_pathinfo=0 改为cgi.fix_pathinfo=1 二,找到/usr/local/nginx/conf/enable-php.conf try_files $uri =404;前面加#改为 #try_files $uri =404; 末尾添
nginx隐藏当前域名下的index.php
在访问172.17.230.124:8081的时候报404 跳转http://172.17.230.124:8081/auth/login 添加index.php能正常访问 http://172.17.230.124:8081/index.php/auth/login 配置如下 server { listen 8081; server_name...
nginx多站点配置,以及隐藏index.php
一、nginx多站点的配置1、默认安装的nginx在/etc/nginx下,则执行以下命令sudo mkdir /etc/nginx/conf.d `` 这个conf.d作为我们放置多站点的目录 ![这里写图片描述](http://img.blog.csdn.net/20171109224935686?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvTEpG
nginx 配置URL重写(实现隐藏index.php)
正则方式: location / { root html/xxxx/yyyy/; index index.php index.html; if ( !-e $request_filename ){ rewrite(.*) /index.php/$1; } } /auth/login index.php?/auth/login try_files方式: nginx.con...
nginx 配置pathinfo
nginx默认不支持pathinfo,最近在调用而支付宝的回调接口 只能使用这种模式
nginx 支持二级域名和pathinfo
/etc/nginx/pathinfo.conf   fastcgi_param  QUERY_STRING       $query_string;   fastcgi_param  REQUEST_METHOD     $request_method;   fastcgi_param  CONTENT_TYPE       $content_type;   fastcgi_param
相关热词 c++和c#哪个就业率高 c# 批量动态创建控件 c# 模块和程序集的区别 c# gmap 截图 c# 验证码图片生成类 c# 再次尝试 连接失败 c#开发编写规范 c# 压缩图片好麻烦 c#计算数组中的平均值 c#获取路由参数