宝塔伪静态怎么配置

如何正确地设置 WordPress 伪静态规则

最近有好几个朋友在使用我们的Verdure主题的时候遇到安装完主题后,前端页面出现404错误提示,然后发私信问我是不是主题有问题啊?那么,这个问题呢其实跟主题是没有关系的,目前很多作者开发的主题都要求WordPress的固定链接形式,所以其实就是 WordPress 伪静态规则配置的问题。当然不同的服务器环境下(IIS/Apache/Nginx)配置伪静态规则也是不同的,今天就细说一下如何正确的配置 WordPress 伪静态规则。

首先,如果你在 WordPress后台 > 设置 > 固定链接,设置为 非默认带?的那种链接结构,然后访问任何一篇文章/分类/自定义页面,如果出现 404 错误,说明你的主机当前不支持 WordPress 伪静态,需要你去自行配置伪静态规则。WordPress 固定链接设置里,我个人建议的自定义结构是:/%post_id%.html ,当然你说想用其他形式也是可以的。

IIS伪静态规则

首先,我是不建议大家安装WordPress使用 Windows 主机的,效率比 Linux 低很多。那么如果你非要用也是可以的,IIS 环境是 Windows 主机的服务器环境,新建一个 txt 文件,将下面的代码添加到文件中,然后另存为 httpd.ini 文件,上传到 WordPress 站点的根目录即可。

[ISAPI_Rewrite]# Defend your computer from some worm attacks#RewriteRule .*(?:global.asa|default.ida|root.exe|..).* . [F,I,O]# 3600 = 1 hourCacheClockRate 3600RepeatLimit 32# Protect httpd.ini and httpd.parse.errors files# from accessing through HTTP# Rules to ensure that normal content gets throughRewriteRule /software-files/(.*) /software-files/$1 [L]RewriteRule /images/(.*) /images/$1 [L]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.phpRewriteRule ^/$ /index.php [L]RewriteRule /(.*) /index.php/$1 [L]Apache伪静态规则

Apache是 Linux 主机下的环境,新建一个 htaccess.txt 文件,添加下面的代码,然后上传到 WordPress 站点的根目录,重命名为 .htaccess 即可。

<IfModule mod_rewrite.c>RewriteEngine OnRewriteBase /RewriteRule ^index\.php$ - [L]RewriteCond %{REQUEST_FILENAME} !-fRewriteCond %{REQUEST_FILENAME} !-dRewriteRule . /index.php [L]</IfModule>Nginx伪静态规则

Nginx环境一般是 Linux 主机 VPS 或ECS服务器用户用的比较多,这些用户一般都会自己配置Nginx,打开 nginx.conf 或者某个站点的配置环境,比如说 themeke.com.conf(不同人配置的不一样),在 server { } 大括号里面添加下面的代码,保存,重启 Nginx 即可。

location / { try_files $uri $uri/ /index.php?$args;} rewrite /wp-admin$ $scheme://$host$uri/ permanent;

如果你的主机用的是宝塔的话,设置起来相对简单一些,进入宝塔界面,选择 网站 > 设置(需要配置的网站) > 伪静态 下拉菜单选择 wordpress ,然后直接保存就可以了。

WP菜鸟建站20:怎样设置wordpress伪静态,来做好网站URL优化?

做过SEO网站优化的同仁,应该都有知道,搜索引擎们一般都比较喜欢静态的网站页面,因为,静态网页一直都是静静地呆在那个地方,等着它们来抓取,找起来非常的方便。而动态网页相对来说就比较麻烦,搜索引擎蜘蛛一旦爬进去,就可能会绕来绕去,半天出不出来。当然,现在的搜索引擎蜘蛛已经变得非常厉害了,对PHP动态网页也是可以顺利的爬取的。如:现在盛行的wordpress网站,对搜索引擎就非常友好,它就是用php代码所写的网站程序。

默认情况下,wordpress网站的URL都是带有“问号”等特殊符号的PHP动态链接(如下图),虽然现在的搜索引擎们也不再抵触这样的动态网页,但是URL的静态链接还是非常受搜索引擎们所青睐的,所以,作为一个wordpress新站长,如果想认真做站的话,建议还是给我们的wordpress网站的URL做好链接样式优化,这样,不仅有利于搜索引擎,而且,对用户来说,也是比较友好的。那么,怎样才能优化wordpress网站的URL链接呢?这个我们要分2步走,第一步:给我们的wordpress网站设置伪静态;第二步:在我们的wordpress网站后台设置固定链接。本章我们来介绍一下“如何设置wordpress伪静态”。

给wordpress网站设置伪静态,要先看看你的网站是什么类型的服务器。web网站服务器目前主要有3种:IIS、apache、nginx。下面,我们就针对这3种web服务器分别介绍伪静态的设置。

一、IIS服务器的伪静态设置。

IIS服务器是微软旗下的一款web服务器,它是运行在windows服务器系统上的。虽然windows系统占用网站服务器CPU、内存等资源比较高,但是,windows的易用性还是让一些菜鸟站长们选择了它。怎样给IIS服务器设置伪静态呢?

在根目录创建一个伪静态文件 httpd.ini ,然后,把下面的代码添加到这个 httpd.ini文件中。

[ISAPI_Rewrite]

# 3600 = 1 hour

CacheClockRate 3600

RepeatLimit 32

RewriteRule /tag/(.*) /index\.php\?tag=$1

RewriteRule /software-files/(.*) /software-files/$1 [L]

RewriteRule /images/(.*) /images/$1 [L]

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]

二、apache服务器的伪静态设置。

apache是一款小巧的web服务器,它运行于linux系统之上,在早期的web网站开发中,apache服务器与PHP开发语言、Mysql数据库组成最佳3人组合,深受PHP网站开发者们的喜爱和追捧。

?要给apache服务器设置伪静态态,要先在网站的根目录创建一个 .htaccess 文件,然后,将下面的伪静态规则代码放到这个文件中。

<IfModule mod_rewrite.c>

RewriteEngine On

RewriteBase /

RewriteRule ^index\.php$ - [L]

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule . /index.php [L]

</IfModule>

三、nginx服务器的伪静态设置。

nginx服务器相对于IIS服务器和apache服务器来说,就要年轻得多,是最近些年才出来的一个小巧的web服务器。nginx服务器一般也是运行在linux系统的服务器主机之上的。因为占用系统资源更加的少,而性能方面又更上一层楼,所以,现在的linux主机用户大多都会选择用nginx来作为自己网站的web服务器。

nginx服务器的伪静态设置相对来说要麻烦一些。一般情况下,要先在nginx的安装目录中找到 nginx.conf 文件,将下面的代码放进这个文件。

location / {

if (-f $request_filename/index.html){

rewrite (.*) $1/index.html break;

}

if (-f $request_filename/index.php){

rewrite (.*) $1/index.php;

}

if (!-f $request_filename){

rewrite (.*) /index.php;

}

}

这个nginx.conf 配置文件一般情况下,在网站服务器的 /server/nginx-1.2.5/conf/ 目录里(如上图),nginx版本号不同时做相应的调整。当然,并不是所有的网站都是把上面的这个伪静态规则代码放到这个nginx.conf文件中,如:我们为网站服务器安装了宝塔后台页面板,我们就可以在宝塔后台的相应位置添加这个代码(如下图)。

通过上面的介绍,我们可以看出,这3种web服务器伪静态的设置方法是完全不一样的。所以,我们在给我们的wordpress网站设置伪静态时,一定要先看看我们的web服务器是什么类型的,是IIS服务器还是apache呢?只有做到对症下药,才能达到我们想要的效果。当然,只是设置伪静态,还不能让我们的wordpress网站的URL链接得到优化,伪静态只是设置了规则,我们还需要通过固定链接来执行这些设置的规则。如何设置固定链接,我们将在下一章中做详细介绍。