2013-05-01 75 views
1

我剛剛將我的webste移動到另一臺服務器,安裝nginx + php5-fpm後,我注意到一個奇怪的永久鏈接結構。服務器名稱在永久鏈接結構中重複。nginx + wordpress服務器名稱在永久鏈接

例子:

www.myserver.com/myserver.com/%postname%-%day%%monthnum% 這些重寫規則,我想使用WordPress顯示我加爲.htaccess(我不能使用,因爲它是nginx的)這錯誤RewriteBase,我相信這應該只是一個「/」,」在那裏,而是讓我發現:

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

我的nginx.conf看起來是這樣的:

user www-data; 
worker_processes 4; 
pid /var/run/nginx.pid; 

events { 
    worker_connections 1024; 
    # multi_accept on; 
} 


http { 
    ## 
    # Basic Settings 
    ## 

    sendfile on; 
    tcp_nopush on; 
    tcp_nodelay on; 
    keepalive_timeout 2; 
    types_hash_max_size 2048; 
    # server_tokens off; 

    # server_names_hash_bucket_size 64; 
    # server_name_in_redirect off; 

    include /etc/nginx/mime.types; 
    default_type application/octet-stream; 

    #access_log /var/log/nginx/access.log; 
    error_log /var/log/nginx/error.log; 
    access_log off; 
client_max_body_size 128M; 
    gzip on; 
    gzip_disable "msie6"; 
    gzip_vary on; 
    gzip_proxied any; 
    gzip_comp_level 6; 
    gzip_buffers 16 8k; 
    gzip_http_version 1.1; 
    gzip_types text/css text/javascript text/xml text/plain text/x-component application/javascript application/x-javascript application/json application/xml application/rss+xml font/truetype application/x-font-ttf font/opentype application/vnd.ms-fontobject image/svg+xml; 

    ## 
    # Virtual Host Configs 
    ## 
    index index.php; 
    ## See here: http://wiki.nginx.org/WordPress 

    server { 
     ## Your IP number goes here: 
     listen XXX.XXX.XXX.XXX; 


rewrite ^/wp-content/w3tc/min/([a-f0-9]+)\/(.+)\.(include(\-(footer|body))?(-nb)?)\.[0-9]+\.(css|js)$ /wp-content/w3tc/min/index.php?tt=$1&gg=$2&g=$3&t=$7 last; 
     ## Your website name goes here. 
     server_name myserver.com; 
     ## Your only path reference. 
      root /var/www/myserver.com; 

       location /phpmyadmin { 
      root /usr/share/; 
      index index.php index.html index.htm; 
      location ~ ^/phpmyadmin/(.+\.php)$ { 
        try_files $uri =404; 
        root /usr/share/; 
        fastcgi_pass 127.0.0.1:9000; 
        fastcgi_index index.php; 
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; 
        include /etc/nginx/fastcgi_params; 
      } 
      location ~* ^/phpmyadmin/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ { 
        root /usr/share/; 
      } 
    } 
      location = /favicon.ico { 
      log_not_found off; 
      access_log off; 
     } 

      location = /robots.txt { 
      allow all; 
      log_not_found off; 
      access_log off; 
     } 

      location/{ 
      # This is cool because no php is touched for static content 
      try_files $uri $uri/ /index.php; 
     } 

     location ~ \.php$ { 
      fastcgi_pass 127.0.0.1:9000; 
      fastcgi_index index.php; 
      fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; 
      include fastcgi_params;  
     } 

     location ~* \.(js|css|png|jpg|jpeg|gif|ico)$ { 
      expires max; 
      log_not_found off; 
     } 

    } 

} 

回答

0

WordPress的檢查Apache的mod_rewrite的,WP需要它來與固定鏈接正常工作,迪克西特的codex

如果你想獲得它的工作更簡單是使用Nginx_helper插件,你可以在這裏找到:https://wordpress.org/extend/plugins/nginx-helper/

在之前鏈接的代碼中,您會發現所有需要使Wordpress與Nginx合作的配置文件!

希望它有幫助!

+0

嗨,它幫助,但我發現這是一個有關WordPress的本身的問題,我不得不改變WordPress的網址(實際上我剛剛重新輸入地址),錯誤消失了。 – mrmad 2013-05-02 04:33:59

+0

嗨,非常感謝... ^^ – mrmad 2013-05-31 12:05:25

相關問題