14

私はnginxを使用するのは初めてですが、cpanel以外のものを使用するのは初めてです... wwwを含めると、nginxを使用してドメインを機能させるのに問題があります。URLで。

www.mydomain.com > not work 404
mydomain.com > works

名前付きの設定ファイルを間違えたのか、nginxのサーバー設定を間違えたのかわかりません。私はちょっと急いで学んでいるので、基本的な構成でエラーが発生しても驚かないでしょう。ドメインの問題は別として、最新のnginxとphp-fpmを実行しています。

私は(しようとしていますか?)サブドメインを実行しようとしています、それらは機能しますが、wwwを使用しています。結果は404になります。メインの.orgサーバードメインのネームサーバーなどを使用しています。ここにいる誰かが私が犯している/または犯した誤りを見つけられることを願って、以下に関連するすべてを投稿します。

etc/hosts 
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1       localhost.localdomain localhost
::1             localhost6.localdomain6 localhost6
184.xxx.xxx.146 server.servername.org servername.org 

named.conf

   ... 
   view "localhost_resolver" {
/* This view sets up named to be a localhost resolver ( caching only nameserver ).
 * If all you want is a caching-only nameserver, then you need only define this view:
 */
   # match-clients         { 127.0.0.0/24; };
   # match-destinations    { localhost; };
   match-clients      { any; };
   match-destinations { any; };
   recursion no;

        zone "servername.org" {
                type master;
                file "/var/named/servername.org.db";
        };

// optional - we act as the slave (secondary) for the delegated domain
zone "mydomain.com" IN {
  type slave;
  file "/var/named/mydomain.com.db";
  masters {10.10.0.24;};
}; 
allow-notify { 184.xxx.xxx.146; };
};

mydomain.com.db

$TTL    86400
mydomain.com.  IN      SOA     ns1.servername.org.      server.servername.org.        (
                                2002012013; Serial
                                1H      ; Refresh (change 1H to 6H in 3 days or so)
                                1800    ; Retry (change to 1H in 3 days)
                                2W      ; Expire
                                1D ); Minimum
mydomain.com.          IN      NS      ns1.servername.org.
mydomain.com.          IN      NS      ns2.servername.org.
ns1.servername.org.              IN      A       184.xxx.xxx.147
ns2.servername.org.             IN      A       184.xxx.xxx.148
mail.servername.org.             IN      A       184.xxx.xxx.146
mydomain.com.          IN      A       184.xxx.xxx.146
mydomain.com.          IN      MX      0       mail.servername.org.
@                               A       184.xxx.xxx.146
www                            A       184.xxx.xxx.146

nginx.confはinclude/etc / nginx / sites-enabled/*を使用します。およびnginx"mydomain.com"構成

server {
    server_name www.mydomain.com;
    rewrite ^(.*) http://mydomain.com$1 permanent;
}
server {
listen 80;
server_name mydomain.com www.mydomain.com;

   # access_log /srv/www/mydomain.com/logs/access.log;
    error_log /srv/www/mydomain.com/logs/error.log;
    root /srv/www/mydomain.com/public_html;
    set $noadmin 1;

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

    # Add trailing slash to */wp-admin requests.
    rewrite /wp-admin$ $scheme://$host$uri/ permanent;

     location ~ \.flv$ {
            flv;
            root /srv/www/mydomain.com/public_html;
     }

     location ~ \.mp4$ {
            root /srv/www/mydomain.com/public_html;
            mp4;
     }

     # use fastcgi for all php files
        location ~ \.php$ {
        try_files $uri =404;
        fastcgi_pass 127.0.0.1:9000;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME /srv/www/mydomain.com/public_html$fastcgi_script_name;
        include fastcgi_params;
   }

# deny access to apache .htaccess files
    location ~ /\.ht
    {
        deny all;
    }
}

私はサブドメインにアクセスできるので、これに対する私の恐ろしい試みは一種の効果があるようです。http : //mydomain.comが接続するのに対し、www.mydomain.comが接続しない理由に固執しています。私は進むにつれてもっと読んだり学んだりしています。変更が何をするのかを理解するまで変更を加えたくありません。私はURLよりも多くを壊してしまうかもしれません。

4

2 に答える 2

12

nginx.confの最初の数行でwww.domain.comを書き直しています。私が間違っていなければ、書き換えとリダイレクトは別物です。最初のサーバーブロックでこれを試してください。

server {
    server_name  www.mydomain.com;
    return       301 http://mydomain.com$request_uri;
}

と変更

server_name mydomain.com www.mydomain.com

server_name mydomain.com

2番目のサーバーブロック。

于 2012-04-01T02:50:51.810 に答える
1

私の解決策とそれは私のために働く

server {
    listen 80;
    server_name yourdomainname.com www.yourdomainname.com;
    return 301 https://$server_name$request_uri;
}

そのファイル内に前のコードを書く->yourdomainname.conf

nginx

于 2019-10-15T01:46:17.423 に答える