Php 使用Ngix使用Magento设置Wordpress显示404错误

Php 使用Ngix使用Magento设置Wordpress显示404错误,php,wordpress,magento,nginx,fishpig,Php,Wordpress,Magento,Nginx,Fishpig,我正在使用magento2和fishpig WordPress集成扩展,并使用Nginx服务器。Wordpress目录位于magento根目录上,名称为“wp” Magento工作正常,显示博客内容,但访问WordPress管理员URL或前端时,显示404错误页面未找到 经过研究,我发现我们必须在Nginx配置文件(/etc/Nginx/sites available)中进行设置,并设置wp目录的位置 下面是我试图添加到Nginx配置文件中的代码 location /wp { inde

我正在使用magento2和fishpig WordPress集成扩展,并使用Nginx服务器。Wordpress目录位于magento根目录上,名称为“wp”

Magento工作正常,显示博客内容,但访问WordPress管理员URL或前端时,显示404错误页面未找到

经过研究,我发现我们必须在Nginx配置文件(/etc/Nginx/sites available)中进行设置,并设置wp目录的位置

下面是我试图添加到Nginx配置文件中的代码

location  /wp {
    index index.php index.html index.htm;
    try_files $uri $uri/ /wp/index.php?$args;
}   

location  /wp {
    index index.php index.html index.htm;
    try_files $uri $uri/ /index.php?$args;
} 

location  /wp/wp-admin/ {
    index index.php index.html index.htm;
    try_files $uri $uri/ /wp/wp-admin/index.php?$args;
}
下面是我浏览过的一些URL-:

下面是我的Nginx文件

    server {
        listen 80;
        listen [::]:80;

        listen 443 ssl;
        listen [::]:443 ssl;

        server_name magento.online.com;
        set $MAGE_ROOT /var/www/html/prod;

        ssl_certificate /etc/nginx/ssl/nginx.crt;
        ssl_certificate_key /etc/nginx/ssl/nginx.key;

        root $MAGE_ROOT/pub;

        index index.php;
        autoindex off;
        charset UTF-8;
    #@raj
        error_page 404 403 = /errors/404.php;
        #add_header "X-UA-Compatible" "IE=Edge";

        # PHP entry point for setup application
        location ~* ^/setup($|/) {
            root $MAGE_ROOT;
            location ~ ^/setup/index.php {
                fastcgi_pass   fastcgi_backend;
                fastcgi_index  index.php;
                fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
                include        fastcgi_params;
            }

            location ~ ^/setup/(?!pub/). {
                deny all;
            }

            location ~ ^/setup/pub/ {
                add_header X-Frame-Options "SAMEORIGIN";
            }
        }

        # PHP entry point for update application
        location ~* ^/update($|/) {
            root $MAGE_ROOT;

            location ~ ^/update/index.php {
                fastcgi_split_path_info ^(/update/index.php)(/.+)$;
                fastcgi_pass   fastcgi_backend;
                fastcgi_index  index.php;
                fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
                fastcgi_param  PATH_INFO        $fastcgi_path_info;
                include        fastcgi_params;
            }

            # Deny everything but index.php
            location ~ ^/update/(?!pub/). {
                deny all;
            }

            location ~ ^/update/pub/ {
                add_header X-Frame-Options "SAMEORIGIN";
            }
        }

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

  #wordpress Code 
    #   location /wordpress/ {
    #       try_files $uri $uri/ /wordpress/index.php?$args;
    #   }


        location  /wp/wp-admin/ {
        index index.php index.html index.htm;
        try_files $uri $uri/ /wp/wp-admin/index.php?$args;
       }



    #   location /wp/wp-admin/ {
    #       index index.php index.html index.htm;
     #          try_files $uri $uri/ /index.php?$args;
    #   }

#End of code

        location /pub/ {
            location ~ ^/pub/media/(downloadable|customer|import|theme_customization/.*\.xml) {
                deny all;
            }
            alias $MAGE_ROOT/pub/;
            add_header X-Frame-Options "SAMEORIGIN";
        }

        location /static/ {
            # Uncomment the following line in production mode
            # expires max;

            # Remove signature of the static files that is used to overcome the browser cache
            location ~ ^/static/version {
                rewrite ^/static/(version\d*/)?(.*)$ /static/$2 last;
            }

            location ~* \.(ico|jpg|jpeg|png|gif|svg|js|css|swf|eot|ttf|otf|woff|woff2)$ {
                add_header Cache-Control "public";
                add_header X-Frame-Options "SAMEORIGIN";
                expires +1y;

                if (!-f $request_filename) {
                    rewrite ^/static/(version\d*/)?(.*)$ /static.php?resource=$2 last;
                }
            }
            location ~* \.(zip|gz|gzip|bz2|csv|xml)$ {
                add_header Cache-Control "no-store";
                add_header X-Frame-Options "SAMEORIGIN";
                expires    off;

                if (!-f $request_filename) {
                rewrite ^/static/(version\d*/)?(.*)$ /static.php?resource=$2 last;
                }
            }
            if (!-f $request_filename) {
                rewrite ^/static/(version\d*/)?(.*)$ /static.php?resource=$2 last;
            }
            add_header X-Frame-Options "SAMEORIGIN";
        }

        location /media/ {
            try_files $uri $uri/ /get.php?$args;

            location ~ ^/media/theme_customization/.*\.xml {
                deny all;
            }

            location ~* \.(ico|jpg|jpeg|png|gif|svg|js|css|swf|eot|ttf|otf|woff|woff2)$ {
                add_header Cache-Control "public";
                add_header X-Frame-Options "SAMEORIGIN";
                expires +1y;
                try_files $uri $uri/ /get.php?$args;
            }
            location ~* \.(zip|gz|gzip|bz2|csv|xml)$ {
                add_header Cache-Control "no-store";
                add_header X-Frame-Options "SAMEORIGIN";
                expires    off;
                try_files $uri $uri/ /get.php?$args;
            }
            add_header X-Frame-Options "SAMEORIGIN";
        }

        location /media/customer/ {
            deny all;
        }

        location /media/downloadable/ {
            deny all;
        }

        location /media/import/ {
            deny all;
        }

        # PHP entry point for main application
        location ~ (index|get|static|report|404|503)\.php$ {
            try_files $uri =404;
            fastcgi_pass   fastcgi_backend;
            fastcgi_buffers 1024 4k;

            fastcgi_param  PHP_FLAG  "session.auto_start=off \n suhosin.session.cryptua=off";
            fastcgi_param  PHP_VALUE "memory_limit=768M \n max_execution_time=600";
            fastcgi_read_timeout 600s;
            fastcgi_connect_timeout 600s;

            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            include        fastcgi_params;
        }

        gzip on;
        gzip_disable "msie6";

        gzip_comp_level 6;
        gzip_min_length 1100;
        gzip_buffers 16 8k;
        gzip_proxied any;
        gzip_types
            text/plain
            text/css
            text/js
            text/xml
            text/javascript
            application/javascript
            application/x-javascript
            application/json
            application/xml
            application/xml+rss
            image/svg+xml;
        gzip_vary on;

        # Banned locations (only reached if the earlier PHP entry point regexes don't match)
        location ~* (\.php$|\.htaccess$|\.git) {
            deny all;
        }   


    }


    #
    ## Optional override of deployment mode. We recommend you use the
    ## command 'bin/magento deploy:mode:set' to switch modes instead.
    ##
    ## set $MAGE_MODE default; # or production or developer
    ##
    ## If you set MAGE_MODE in server config, you must pass the variable into the
    ## PHP entry point blocks, which are indicated below. You can pass
    ## it in using:
    ##
    ## fastcgi_param  MAGE_MODE $MAGE_MODE;
    ##
    ## In production mode, you should uncomment the 'expires' directive in the /static/ location block

将WordPress集成到Magento中时,您不需要对重写进行任何特殊的操作,而要让WordPress在Nginx上正常工作,则不需要执行这些操作


你甚至可能根本不需要重写。重写的存在是为了通过index.php路由所有前端请求,以提供漂亮的SEO URL。由于前端由Magento显示,WordPress的此功能未被使用,因此可能不需要重写。所有对WordPress管理员的请求都是针对已存在的文件的,因此不需要重写。

您好,我知道这是一个旧线程,但您找到修复方法了吗?我也有同样的问题,谢谢!