Nginxでmagentoを実行しています。
私のルートは/pub
です
しかし、www.myurl.com/pub/xxx.file
にリンクしようとしている拡張機能がいくつかあるので、すべての/pub
を/
に書き直したいと思います。
私の計画はwww.myurl.com/pub/xxx.file
をwww.myurl.com/xxx.file
にすることでしたが、機能していません。
これが私のconfファイルです(abcdefg
はテストディレクトリです):
server {
listen 443 ssl http2;
server_name www.myurl.com ;
index index.html index.htm index.php default.html default.htm default.php;
root /home/wwwroot/www.myurl.com/pub;
ssl on;
ssl_certificate /etc/letsencrypt/live/www.myurl.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/www.myurl.com/privkey.pem;
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
ssl_ciphers "myciphers";
ssl_session_cache builtin:1000 shared:SSL:10m;
ssl_dhparam /usr/local/nginx/conf/ssl/dhparam.pem;
location /pub {
rewrite /pub /;
}
location ^~/abcdefg {
rewrite /abcdefg/ /1234567/;
}
include other.conf;
if (!-e $request_filename) {
rewrite ^(.+)$ /index.php;
}
set $MAGE_MODE production;
include enable-php.conf;
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
{
expires 30d;
}
location ~ .*\.(js|css)?$
{
expires 12h;
}
#location ~ /.well-known {
# allow all;
#}
#location ~ /\.
#{
# deny all;
#}
access_log /home/wwwlogs/shopkey.doyustudio.com.log;
error_log /home/wwwlogs/shopkey.doyustudio.com.error.log debug;
}
root /home/wwwroot/www.myurl.com/pub;
を設定する代わりに、root /home/wwwroot/www.myurl.com/;
を使用してから、次のようにpub
dirを試して場所を作成します。
location / {
try_files /pub/$uri $uri;
}
これは、最初にpub
ディレクトリで$ uriを検索することを意味します。存在しない場合は、root
ディレクトリで試してください。