wordpress設置自定義固定連接操做說明

問題:固定鏈接設置中自定義結構

說明:點擊「設置」下「固定鏈接」進入固定鏈接設置頁面,對應固定連接的地址但願看到的地址格式爲http://know.szreach.com/<分類前綴或標籤前綴>/<post-name>地址爲:http://know.szreach.com/%category%/%post-name% php

 

設置完成後,在頁面上打開文章出現如下錯誤地址找不到 web

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

 

解決方法:

第一步:首先檢查檢測Apache是否支持mod_rewrite

方法:經過php提供的phpinfo()函數查看環境配置,經過Ctrl+F查找到「Loaded Modules」,其中列出了全部apache2handler已經開啓的全部模塊,若是裏面包括「mod_rewrite」,則已經支持,再也不須要繼續設置。 ubuntu

<?php phpinfo(); ?> vim

 

發現不支持mod_rewrite,繼續是設置使支持mod_rewrite ide

第二步:使支持mod_rewrite

.默認安裝apache2是支持mod_rewrite

安裝apache2命令:sudo apt-get install apache2 wordpress

安裝目錄是:/etc/apache2 函數

檢查mod_rewrite.so是否存在 post

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

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

 

獲得的結果:

打開一邊文章,能夠看到正確的連接地址

相關文章
相關標籤/搜索