在眾多CMS程序中,我們使用WORDPRESS還是比較多的,不僅僅是安全度較好,二來在於插件和主題很多,即便對於不會建站技術的用戶也很簡單的就可以搭建屬於自己的網站項目。對於網站我們肯定是需要讓有用戶訪問量才能創造價值,比如收益比如得到用戶的贊許都是我們做網站的用戶希望看到的。早年我們可能較多的會使用動態目錄頁面,但是對於搜索引擎不是 很好,我們最好是使用偽靜態或者生成靜態頁面。
在WORDPRESS程序應用的時候偽靜態規則是需要根據我們服務器環境來設定的,比如NGINX或者APACHE是我們常用的規則,這里我將兩個規則對應的規則內容代碼整理出來。
第一、APACHE環境
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
這個上面代碼是適合APACHE環境的,我們只要根目錄有一個.htaccess文件,然后丟上上面的文件就可以。
第二、Nginx環境
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;
}
}
一般虛擬主機都是APACHE環境的,如果是VPS,我們很多都是用的NGINX,這里需要在對應站點的NGINX環境中應用到這個規則,比如/usr/local/nginx/conf/wordpress.conf
設定到這個文件,然后在站點配置文件中引用。
/usr/local/nginx/conf/vhost/hostusvps.com.conf
server {
listen 80;
server_name hostusvps.com www.hostusvps.com;
access_log /home/wwwlogs/hostusvps.com_nginx.log combined;
index index.html index.htm index.php;
include wordpress.conf;
root /home/wwwroot/hostusvps.com;
location ~ .*\.(php|php5)?$ {
#fastcgi_pass remote_php_ip:9000;
fastcgi_pass unix:/dev/shm/php-cgi.sock;
fastcgi_index index.php;
include fastcgi.conf;
}
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|flv|ico)$ {
expires 30d;
access_log off;
}
location ~ .*\.(js|css)?$ {
expires 7d;
access_log off;
}
}
上面腳本紅色部分就是引用到的偽靜態規則。
第三、二級目錄規則
如果我們在站點二級目錄文件夾單獨用一個WP程序,那規則就不同了。
location /hostusvps.com/ {
index index.html index.php;
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 (.*) /hostusvps.com/index.php;
}
}
這里我們對應的是hostusvps.com二級目錄文件夾,如果是需要用其他文件夾那就換一個對應名稱。修改和添加到根目錄的HTACCESS文件中就可以了。