A. Thinkphp实现伪静态如何去掉目录中的index.php
Myapp是我的项目文件名,默认的访问地址是上面这样的。为了使URL更加简介友好,现在要去掉中间的index.php,方法如下:
1。确认httpd.conf配置文件中加载了mod_rewrite.so 模块,加载的方法是去掉mod_rewrite.so前面的注释#号
2。讲httpd.conf中的Allowoverride None 将None改为All
3。打开对应的项目配置文件,我的项目配置文件是Myapp/Conf/config.php ,在这个配置文件数组中增加一行,‘URL_MODEL’=>2
4。在项目的根目录下面建立一个.htaccess文件,里面写入下面的内容:
<IfMole rewrite_mole>
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]
</IfMole>
如果你的服务器支持rewrite,现在就可以通过http://localhost/Myapp/Index/index/访问Index模块下面的index操作。
B. 怎样去掉wordpress伪静态链接中的index.php
自己写伪静态规则
C. 怎样去掉wordpress伪静态链接中的index.php
主机问题,要支持rewrite。
为了确认一下,你网站主目录下有没有可写的.htaccess文件。
有的话加上
<IfMole mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfMole>
D. 网站进行url的伪静态之如何去掉后缀index.php
这个的设置比较简单。
在网站空间后台有首选域的选项, index.有很多结尾的 。 选择 index.hrml 网站访问的时候就会默认直接的顶级域名不带尾巴
E. apache 伪静态如何隐藏index.php
Apache伪静态配置方法有两种:
在网站根目录下添加文件,.htaccess,在此文件内写伪静态规则,使用它需要在apache配置文件http.conf中完成相应配置.具体配置方法网上很多,这里不再赘述.
而另一种是直接在httpd.conf中使用.这种方法性能高于前者。
应用场景
(1),采用.htaccess的场景
用户需要针对特定目录改变服务器的配置而又没有root权限的情况下,可以通过.htaccess文件实现。
如果服务器管理员不愿意频繁修改配置,则可 以允许用户通过.htaccess文件自己修改配置. 比如ISP,在同一个机器上运行了多个用户站点,希望用户可以自
己改变配置,便可以配置好apache,开启对.htaccess文件的支持即可.
(2),不采用.htaccess的场景
虽然上述步骤1可以实现,但一般都应该尽可能地避免使用.htaccess文件。任何希望放在.htaccess文件中的配置,都可以放在主配置文件(http.conf)的段中,而且更高效。
(3)避免使用.htaccess文件有两个主要原因
首先是性能。如果AllowOverride启用了.htaccess文件,则Apache需要在每个目录中查找.htaccess文件,因此,无论是否真正用到,启用.htaccess都会导致
性能的下降。另外,对每一个请求,都需要读取一次.htaccess文件。
还有,Apache必须在所有上级的目录中查找.htaccess文件,以使所有有效的指令都起作用,所以,如果请求/www/htdocs/example中的页面,Apache必须查找以下文件:
/.htaccess
/www/.htaccess
/www/htdocs/.htaccess
/www/htdocs/example/.htaccess
总共要访问4个额外的文件,即使这些文件都不存在。(注意,这可能仅仅由于允许根目录”/”使用.htaccess ,虽然这种情况并不多。)
其次是安全。这样会允许用户自己修改服务器的配置,这可能会导致某些意想不到的修改,所以请认真考虑是否应当给予用户这样的特权。但是,如果给予用
户较少 的特权而不能满足其需要,则会带来额外的技术支持请求,所以,必须明确地告诉用户已经给予他们的权限,说明AllowOverride设置的值,并引导他
们参阅相应的说明,以免日后生出许多麻烦。
注意,在/www/htdocs/example目录下的.htaccess文件中放置指令,与在主配置文件中段中放置相同指令,是完全等效的。
总结
由上我们可以知道,使用.htaccess文件具有性能上的不利之处,所以我们应该尽可能避免使用.htaccess文件,下面介绍一种不使用.htaccess文件进行伪静态
的方法:
Apache 1.x 的用户请检查 conf/httpd.conf 中是否存在如下两段代码:
LoadMole rewrite_mole libexec/mod_rewrite.so
AddMole mod_rewrite.c
Apache 2.x 的用户请检查 conf/httpd.conf 中是否存在如下一段代码:
LoadMole rewrite_mole moles/mod_rewrite.so
如果存在,且以#开头,请删除#。然后在配置文件(通常就是 conf/httpd.conf或者conf/extra/httpd-vhosts.conf)中加入如下代码。此时请务必注意,如果网
站使用通过虚拟主机来定义,请务必加到虚拟主机配置段 中去,如果加在虚拟主机配置外部将可能无法使用。改好后然后将 Apache 重启。
例
①.在apache配置文件httpd.conf中找到:
LoadMole rewrite_mole moles/mod_rewrite.so
这句,去掉前边的注释符号“#”,如果没有则添加这句。
②.在代码:
Options FollowSymLinks
AllowOverride None
下面添加伪静态代码(以Wordpress伪静态为例):
RewriteEngine On
RewriteBase /
RewriteRule ^index.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
其中/usr/local/apache/htdocs/wwwtest即为要进行伪静态的网站的根目录
③.重启apache
F. thinkphp5 怎么把默认的index去掉
1在Apache根目录conf文件夹下的httpd.conf配置文件中加载mod_rewrite.so模块;
#LoadMole rewrite_mole moles/mod_rewrite.so把前面的警号去掉
2
AllowOverride None 将None改为 All
在APACHE里面去配置 (注意其他地方的AllowOverride也统统设置为ALL)
即:AllowOverride none 改 AllowOverride ALL
保存httpd.conf,重启Apache服务器;
3 确保URL_MODEL设置为2,在项目的配置文件里写 'URL_MODEL' => '2',
4
.htaccess文件必须放到跟目录下,在文件里面添加:
<IfMole mod_rewrite.c>
Options +FollowSymlinks
RewriteEngine onRewriteCond %{REQUEST_FILENAME} !-dRewriteCond %{REQUEST_FILENAME} !-fRewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]</IfMole>
G. 怎样去掉wordpress伪静态链接中的index.php
去掉wordpress伪静态链接中的index.php方法详见:
https://..com/question/492015806742884052.html