如何为WordPress配置IIS、Apache和Nginx的伪静态规则?

avatar
作者
猴君
阅读量:0
WordPress伪静态规则因服务器类型不同而异,以下是IIS、Apache和Nginx的示例:,,IIS:,``xml,,,,,,,,,,,,,`,,Apache:,`apache,, RewriteEngine On, RewriteBase /, RewriteRule ^index\.php$ [L], RewriteCond %{REQUEST_FILENAME} !f, RewriteCond %{REQUEST_FILENAME} !d, RewriteRule . /index.php [L],,`,,Nginx:,`nginx,location / {, try_files $uri $uri/ /index.php?$args;,},``

IIS环境下的WordPress伪静态规则

IIS环境是Windows主机常用的服务器环境,在IIS环境中,需要新建一个txt文件并将以下代码添加到文件中:

 [ISAPI_Rewrite] Defend your computer from some worm attacks #RewriteRule .*(?:global.asa|default\.ida|root\.exe|\.\.).* . [F,I,O] 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 /tag/(.*) /index.php?tag=$1 RewriteRule /softwarefiles/(.*) /softwarefiles/$1 [L] RewriteRule /images/(.*) /images/$1 [L] RewriteRule /sitemap.xml /sitemap.xml [L] RewriteRule /favicon.ico /favicon.ico [L] For filebased 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]

然后另存为httpd.ini文件,上传到WordPress站点的根目录即可。

如何为WordPress配置IIS、Apache和Nginx的伪静态规则?

Apache环境下的WordPress伪静态规则

Apache是Linux主机下常见的环境,现在一般的Linux虚拟主机都采用这种环境,新建一个htaccess.txt文件,添加下面的代码:

 <IfModule mod_rewrite.c>     RewriteEngine On     RewriteBase /     RewriteRule ^index\.php$ [L]     RewriteCond %{REQUEST_FILENAME} !f     RewriteCond %{REQUEST_FILENAME} !d     RewriteRule . /index.php [L] </IfModule>

然后上传到WordPress站点的根目录,重命名为.htaccess文件即可。

Nginx环境下的WordPress伪静态规则

Nginx环境一般是Linux主机VPS或服务器用户用的比较多,这些用户一般都会自己配置Nginx,或者有专门的人帮你配置,打开nginx.conf或者某个站点的配置环境,比如wpdaxue.com.conf(不同人配置的不一样),在server {}大括号里面添加下面的代码:

 location / {     try_files $uri $uri/ /index.php?$args; } Add trailing slash to */wpadmin requests. rewrite /wpadmin$ $scheme://$host$uri/ permanent;

保存后重启Nginx即可。

相关问答FAQs

Q1: 如何检测我的主机是否支持WordPress伪静态?

A1: 在WordPress后台 > 设置 > 固定链接中,设置为非默认带“?”的结构,然后访问任何一篇文章,如果出现404错误,说明你的主机当前不支持WordPress伪静态。

Q2: WordPress最佳固定链接设置选项是什么?

A2: WordPress最佳固定连接可以选择数字型和文章名两种,如果你追求每篇文章的细节优化,推荐选择文章名,否则,直接选择数字型即可。


对于IIS(Internet Information Services)

1、安装URL Rewrite模块

确保IIS服务器已安装URL Rewrite模块。

2、创建 rewrite.config 文件

在网站根目录下创建一个名为rewrite.config 的文件。

3、添加 rewrite 规则

rewrite.config 文件中添加以下规则:

 <rules>   <rule name="WordPress Rule">     <match url="^(.*)$" />     <conditions>       <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />       <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />     </conditions>     <action type="Rewrite" url="index.php" />   </rule> </rules>

4、配置Web.config

在网站的Web.config 文件中,添加或修改system.webServer 部分:

 <system.webServer>   <rewrite>     <rules>       <rule name="WordPress Rule">         <match url="^(.*)$" />         <conditions>           <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />           <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />         </conditions>         <action type="Rewrite" url="index.php" />       </rule>     </rules>   </rewrite> </system.webServer>

对于Apache

1、编辑 .htaccess 文件

在WordPress网站根目录下,编辑.htaccess 文件。

2、添加 mod_rewrite 规则

.htaccess 文件中添加以下规则:

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

对于Nginx

1、编辑 nginx.conf 文件

在Nginx配置文件中,找到或添加对WordPress网站的服务配置。

2、添加 location 块

location / 块中添加以下配置:

 location / {     try_files $uri $uri/ /index.php?$query_string; }

就是在IIS、Apache和Nginx服务器上配置WordPress伪静态的基本步骤,请根据实际情况调整路径和配置,确保网站能够正确地使用伪静态规则。

    广告一刻

    为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!