私はこのウェブサイト http://raspberrypihelp.net/tutorials/24-raspberry-pi-webserver に従ってRaspberry PiにHTTPサーバーnginxをセットアップし、サイト呼び出しをセットアップしようとしましたexample.com。しかし、Sudo service nginx restart
を実行すると、
Nginxの再起動:nginx:[emerg] /etc/nginx/sites-enabled/example.com:3の不明なディレクティブ ""
これはexample.comのコードです。
server {
server_name example.com 192.168.1.88;
access_log /srv/www/example.com/logs/access.log;
error_log /srv/www/example.com/logs/error.log;
root /srv/www/example.com/public/;
location / {
index index.php index.html index.htm;
try_files $uri $uri/ /index.php?$args;
}
location ~ \.php$ {
include /etc/nginx/fastcgi_params;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /srv/www/example.com/public$fastcgi_script_name;
}
location /phpmyadmin {
root /usr/share/;
index index.php index.html index.htm;
location ~ ^/phpmyadmin/(.+\.php)$ {
try_files $uri =404;
root /usr/share/;
fastcgi_pass unix:/var/run/php5-fpm.sock;
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 /phpMyAdmin {
rewrite ^/* /phpmyadmin last;
}
}
手順に従っていますが、正常に実行できません。
同じ問題がありましたが、Webから構成コードをコピーして貼り付け、そこにいくつかのダーティEOL
(行末)文字がありました。
エディターはそれらを表示しませんでしたが、nginx
はそれらをディレクティブのように扱いました。
すべてのEOL
を削除して、再度追加しました。
ここでコピーアンドペースト作業を行ったようです。行末(EOL)で非表示になっている余分な文字を取得することは珍しくありません。これを試して:
このツールでテキストを実行します: http://www.textfixer.com/tools/remove-line-breaks.php
次に、削除された可能性があり、コメントの影響を受けるブレークを修正します。
これでうまくいきました。それがあなたのために働くことを願っています。
Nginxバイナリは--without-http_fastcgi_moduleオプションでコンパイルされたようです。これはデフォルトではありません。別のバイナリをダウンロードまたはコンパイルしてみてください。
実行してみてください
nginx -V
(大文字のVを使用)nginxのコンパイルに使用されたオプションを確認します。
Confファイルの途中でテキストを編集したところ、nginxはファイル自体の先頭でこのエラーを表示し始めました。ファイルの内容をコピーして新しいファイルを作成し、そこに内容を貼り付けたところ、nginxはこのエラーを表示しなくなりました。
「Sudo nginx -t」を実行すると、「不明なディレクティブ 'index.html'」のようなエラーメッセージで同様の問題に直面しました。 index.htmlのHTML構文エラーを修正した後、問題は解決されました。