WordPress链接中如何去掉index.php?

2024-11-21 00:27:23
推荐回答(4个)
回答1:

一、在WordPress根目录建立一个文件.名为 404.php,注意编码为utf-8, 里面的内容为

$qs = $_SERVER['QUERY_STRING'];
$pos = strrpos($qs, '://');
$pos = strpos($qs, '/', $pos + 4);
$_SERVER['REQUEST_URI'] = substr($qs, $pos);
$_SERVER['PATH_INFO'] = $_SERVER['REQUEST_URI'];
include('index.php');
?>

二、如果是win的服务器,进去,打开IIS管理工具-找到你的-网站-属性-自定义错误-404;404.2;404.3;类型全部选择URL,地址输入:/404.php 前面的“/”务必保留;

登录wordpress后台,在固定链接/永久链接(Permalinks)设置项目- 自定义结构里去掉index.php。是不是成功了

三、关于自定义结构,可以有以下几种可选

一些其它设置的方法:
%year% 文章发表的年份,四位数,如 2004
%monthnum% 月份,如 05
%day% 天,如 28
%hour% 小时,如 15
%minute% 分钟,如 43
%second% 秒,如 33
%postname% 文章别名
%post_id% 文章的唯一ID,如 423
%category% 分类的别名

回答2:

方法一:
新建一个记事本,在里面写入下面代码保存为txt格式,重新命名为404.php,上传到网站根目录
代码:
$qs = $_SERVER["QUERY_STRING"];
$_SERVER["REQUEST_URI"] = substr($qs, strpos($qs, ‘:80′)+3);
$_SERVER["PATH_INFO"] = $_SERVER["REQUEST_URI"];
include(‘index.php’);
?>

第二步、到你的虚拟主机控制面板,设置404自定义错误指向404.php
就是你买空间那里,一定有他们自己的后台设置,而现在基本都支持设置404错误的,设置好,把404错误指向404.php。这里我要说一下个重点,就是很多空间商的后台设置后不能及时更新,一般需要几分钟或者几小时,只要你设置好了,你就耐心点,等候,不要改来改去。
第三步、进入WordPress管理后台,点击设置,点击固定链接
wordpress后台那里有个固定连接设置或者叫永久链接的,在设置那边。可以看到有5种设置,你可以选择你自己喜欢的方式设置,也可以设置自己自定义的链接样式,设置好后就完成了。
方法二:打开记事本,把下面代码粘贴进去:
[ISAPI_Rewrite]
# 3600 = 1 hour
CacheClockRate 3600
RepeatLimit 32
# Protect httpd.ini and httpd.parse.errors files
# from accessing through HTTP
# Rules to ensure that normal content gets through
RewriteRule /sitemap.xml /sitemap.xml [L]
RewriteRule /favicon.ico /favicon.ico [L]
# For file-based wordpress content (i.e. theme), admin, etc.
RewriteRule /wp-(.*) /wp-$1 [L]
# For normal wordpress content, via index.php
RewriteRule ^/$ /index.php [L]
RewriteRule /(.*) /index.php/$1 [L]
保存时保存类型选择“所有文件”,注意:伪静态注释有中文的,保存编码格式要:ANSI,并输入文件名称:httpd.ini
将这个httpd.ini文件上传到WP程序所在的目录index.php内。
之后进入WP后台修改固定链接,比如:/%category%/%post_id%.html 这样大功告成了。
好了,大家记住这去掉wordpress伪静态链接中的index.php方法了,实在还不懂就只有换主机类型啦!

回答3:

具体操作步骤如下:
1, 新建一个记事本文件, 写入以下代码, 并保存, 连同.txt格式重新命名为404.php;
将这个404.php页面上传到网站根目录下。
$_SERVER['REQUEST_URI'] = substr($qs, strpos($qs, ‘:80′)+3);
$_SERVER['PATH_INFO'] = $_SERVER['REQUEST_URI'];
2, 在主机服务器的管理控制面板中, 设置404自定义错误指向404.php;
3, 完成以上步骤后,在WordPress的后台 – 设置(Options) – 固定链接(Permalinks)中重新设置你希望使用的永久链接形式就可以了.
通过以上三步简单的设置, 你的Windows主机就可以和Linux主机一样, 设置固定链接时就不会再出现index.php了。

回答4:

主机问题,要支持rewrite。
为了确认一下,你网站主目录下有没有可写的.htaccess文件。
有的话加上


RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]