wordpress设置自定义固定链接操作说明

问题:固定连接设置中自定义结构

说明:点击“设置”下“固定连接”进入固定连接设置页面,对应固定链接的地址希望看到的地址格式为http://know.szreach.com/<分类前缀或标签前缀>/<post-name>地址为:http://know.szreach.com/%category%/%post-name%

 

设置完成后,在页面上打开文章出现以下错误地址找不到

http://know.szreach.com/uncategorized/%post-name%/

 

解决方法:

第一步:首先检查检测Apache是否支持mod_rewrite

方法:通过php提供的phpinfo()函数查看环境配置,通过Ctrl+F查找到“Loaded Modules”,其中列出了所有apache2handler已经开启的所有模块,如果里面包括“mod_rewrite”,则已经支持,不再需要继续设置。

<?php phpinfo(); ?>

 

发现不支持mod_rewrite,继续是设置使支持mod_rewrite

第二步:使支持mod_rewrite

.默认安装apache2是支持mod_rewrite

安装apache2命令:sudo apt-get install apache2

安装目录是:/etc/apache2

检查mod_rewrite.so是否存在

命令是:grep -rn "mod_rewrite.so" ./

root@ubuntuServer1204:/etc/apache2# grep -rn "mod_rewrite.so" ./

./mods-available/rewrite.load:1:LoadModule rewrite_module /usr/lib/apache2/modules/mod_rewrite.so

查看rerewrite.load 文件

命令是:cat /etc/apache2/mods-available/rewrite.load

root@ubuntuServer1204:/etc/apache2# cat /etc/apache2/mods-available/rewrite.load 

LoadModule rewrite_module /usr/lib/apache2/modules/mod_rewrite.so

加载mod_rewrite模块

命令是:sudo a2enmod rewrite

root@ubuntuServer1204:~#sudo a2enmod rewrite

Enabling module rewrite.

To activate the new configuration, you need to run:

  service apache2 restart

.rewrite.load 一个象征性的连接

命令是:ls -al /etc/apache2/mods-enabled/rewrite.load 

root@ubuntuServer1204:~# ls -al /etc/apache2/mods-enabled/rewrite.load 

lrwxrwxrwx 1 root root 30 Dec  3 14:02 /etc/apache2/mods-enabled/rewrite.load -> ../mods-available/rewrite.load

 

.改"AllowOverride None" "AllowOverride all"

因为wordpress单独写了份文件修改地址etc/apache2/conf.d/wordpress

root@ubuntuServer1204:/etc/apache2/conf.d# vim wordpress 

 

ServerName 127.0.0.1

<VirtualHost *:80>

        ServerAdmin webmaster@localhost

 

        DocumentRoot /var/www/wordpress

        <Directory />

                Options FollowSymLinks

                AllowOverride None

        </Directory>

        <Directory /var/www/wordpress/>

                Options Indexes FollowSymLinks MultiViews

                AllowOverride None

                Order allow,deny

                allow from all

        </Directory>

 

        ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/

        <Directory "/usr/lib/cgi-bin">

                AllowOverride None

                Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch

                Order allow,deny

                Allow from all

        </Directory>

"wordpress" 42L, 990C           

第三步:重启apache2

命令是:sudo service apache2 restart

root@ubuntuServer1204:/etc/apache2/conf.d# sudo service apache2 restart

 * Restarting web server apache2

 ... waiting    ...done

 

第四步:再次检查检测Apache是否支持mod_rewrite

 

得到的结果:

打开一边文章,可以看到正确的链接地址

 

 

转载于:https://my.oschina.net/u/183217/blog/181129

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值