X



Nginx

0254名無しさん@お腹いっぱい。
垢版 |
2016/02/04(木) 22:16:51.16
>>252
解決しました。

まず /path/to/redmine/config/routes.rb に
Redmine::Utils::relative_url_root = "/redmine" # 追記
Rails.application.routes.draw do
scope Redmine::/Utils::relative_url_root do # 追記
root :to => 'welcome#index', :as => 'home'
:
end # 追記
end
と記入し、 unicorn を再起動。

次に、 /etc/nginx/conf.d/default.conf に
location /redmine {
alias /var/lib/redmine/public;
try_files $uri/index.html $uri.html $uri @app;
}
location @app {
rewrite ^/(.+) $1 break;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_redirect off;
proxy_pass http://redmine_server:8080/$1$is_args$args;
}
と記入し、 nginx を再起動。
以上で http://nginx_server/redmine/ でアクセスできるようになりました。

Redmine 公式の HowTo Install Redmine in a sub-URI と proxy_pass を組み合わせて実現できました。
<http://www.redmine.org/projects/redmine/wiki/HowTo_Install_Redmine_in_a_sub-URI>;
ありがとうございました。
0255名無しさん@お腹いっぱい。
垢版 |
2016/03/03(木) 22:35:11.27
URLをwwwなしでリダイレクトさせることはできたのですがindex.htmlを表示させない?削る?ように統一する方法はありますか?
リダイレクトループから出られなくなりました
お知恵を拝借したいです、よろしくお願いします
0256名無しさん@お腹いっぱい。
垢版 |
2016/03/13(日) 17:49:08.41
自宅鯖(fedora23,nginx1.8.1)と全く同じコンフィグ使ってるんですがVPS(archlinux最新,nginx1.8.1)でだけ問題が発生します
httpできたリクエストをhttpsに飛ばしてるんですがVPSの方だけhttpでアクセスすると
400 bad request plain HTTP reqestがHTTPSポートに送られた
ってなかんじの表示が出てちゃんと飛ばしてくれない(ここはまだhttp)
conf.d/hoge.confにこんな感じに設定
server {
listen 80;
server_name fuga.hoge.net;
return 301 https://fuga.hoge.net$request_uri;
}
server {
listen 443 ssl;
ssl on;
ssl_certificate /etc/letsencrypt/live/hoge.net-0001/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/hoge.net-0001/privkey.pem;
ssl_protocols TLSv1.2 TLSv1.1 TLSv1;
root /var/www/fuga/;
server_name fuga.hoge.net;
以下アクセスログやindex、fastcgiの設定
原因わかりますか?
0260名無しさん@お腹いっぱい。
垢版 |
2016/04/19(火) 22:38:00.25
特定のディレクトリ以下のファイルやディレクトリのアクセス禁止ってどう書けばええの?
locaiton /hogehoge {
deny all;
}
だけじゃダメだよね?
0263名無しさん@お腹いっぱい。
垢版 |
2016/04/20(水) 11:25:55.50
それなら基本的には大丈夫なんだけど、自分でアクセスした結果はどうなの?

質問するなら設定内容とその目的、結果はどうなったかを書いていかないと
情報を小出しにするのは宜しくないよ。聞く側も聞かれる側もだけど。
もっともスルーすれば良いんだけど俺みたいに食い付いちゃうのもいるww
0264名無しさん@お腹いっぱい。
垢版 |
2016/04/20(水) 11:27:39.57
アクセスするとディレクトリ自体は403返してくれるんですがファイルに直接アクセスすると見えちゃうんです
もちろんキャッシュとか消して見てる
0270名無しさん@お腹いっぱい。
垢版 |
2016/04/20(水) 13:54:10.28
もう一度 conf 見なおすとかすると良いんじゃ無いかなー。
うちの検証環境で同じ事をしても指定パス以下は全て 403 返してくるから想定通りに動くよ。
0271名無しさん@お腹いっぱい。
垢版 |
2016/04/20(水) 13:58:33.25
ついでに一部伏せたログペタリ

# conf
location /test/ {
deny all;
}

# log
2016/04/20 11:21:05 [error] 27953#27953: *1 access forbidden by rule, client: 192.168.x.x, server: example.com, request: "GET /test/a.txt HTTP/2.0", host: "example.com"
2016/04/20 13:52:48 [error] 28742#28742: *2 access forbidden by rule, client: 192.168.x.x, server: example.com, request: "GET /test/hoge/b.txt HTTP/2.0", host: "example.com"
0272名無しさん@お腹いっぱい。
垢版 |
2016/04/20(水) 14:07:15.74
confがこんな感じで
location / {
index /hogehoge/public/index.php;
}

location ~\.php$ {
fastcgi_pass unix:/run/php-fpm/php-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
location ~\.(jpg|gif|png|css|js) {
expires 7d;
}
location /hogehoge/private/ {
deny all;
}
}
0273名無しさん@お腹いっぱい。
垢版 |
2016/04/20(水) 14:07:32.26
具体的な設定(出せないところは伏せるとして)書かない時点で
エスパー案件だったか
構ったのが悪かったよ、あほらし
0274名無しさん@お腹いっぱい。
垢版 |
2016/04/20(水) 14:12:28.21
218.221.35.229 - - [20/Apr/2016:14:09:20 +0900] "GET /hogehoge/private/conf/options.json HTTP/1.1" 200 12219 "-" "Mozilla/5.0 (Linux; Android 5.1; Power Build/LMY47D)"

普通に出来ちゃってるんです
0275名無しさん@お腹いっぱい。
垢版 |
2016/04/20(水) 14:55:10.35
270, 271 だけど
情報小出しだし、どうも要領を得ない感じなのもあって時間とれないんで
他の人のレス待つか設定見なおすとかしてみるといいかもですね。
ではでは。
0279名無しさん@お腹いっぱい。
垢版 |
2016/06/04(土) 19:41:31.14
google-chrome で http2 が有効にならない.
切り分けがうまくいってないんですが,怪しいところがないか,アドバイスもらえませんか.

サーバ
OS: debian jessie
nginxバージョン: 1.10.1
コンパイルオプション(モジュール系): --with-http_ssl_module --with-http_realip_module --with-http_addition_module --with-http_gzip_static_module --with-http_v2_module

クライアント
OS: win8.1
ブラウザ: cyberfox 45.0.1,google-chrome 51.0.2704.63

サーバ側の切り分け
・cyberfox+spdy indicator → http2有効
・google chrome+spdy indicator → spdy無効

クライアント側の切り分け
・wikipedia へ google chrome+spdy indicatorでアクセス → http2有効

大していじれないブラウザよりも,自分でコンパイルしているnginx側を疑っているんですが,google-chromeで一度も成功しておらず,何が問題か判明していません.
nginxの設定は次の投稿で
0280名無しさん@お腹いっぱい。
垢版 |
2016/06/04(土) 19:42:13.87
user www-data;
worker_processes 1;
events {
worker_connections 768;
}
http {
include mime.types;
include deny.conf;
default_type application/octet-stream;
sendfile on;
tcp_nopush on;
keepalive_timeout 65;
types_hash_max_size 2048;
server_tokens off;
gzip on;
gzip_disable "msie6";
gzip_comp_level 1;
gzip_proxied any;
gzip_vary on;
gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;

(続く)
0281名無しさん@お腹いっぱい。
垢版 |
2016/06/04(土) 19:43:08.37
server {
listen 443 ssl http2;

root /home/USERNAME/public_html;
index index.php index.htm;

access_log logs/ssl_access.log;
error_log logs/ssl_error.log;

server_name www.hadacchi.com;

ssl_certificate /path/to/server.crt;
ssl_certificate_key /path/to/server.key;

ssl_session_timeout 5m;

ssl_protocols TLSv1.1 TLSv1.2;
ssl_ciphers HIGH:!ADH:!MD5:!aNULL:!eNULL:!SHA1:!MEDIUM:!LOW:!EXP:!kEDH;
ssl_prefer_server_ciphers on;

...(以下,locationディレクティブの羅列)
}
}

以上です.

怪しいところがあれば,教えてくださいませ.
0285279
垢版 |
2016/06/04(土) 20:04:07.15
ですよねー
いつまでも止めておくわけにいかないので,再開しました

ってそれはいいとして,なんか怪しい設定ないですかね;
0286279
垢版 |
2016/06/04(土) 20:12:48.36
追加です.
まさかと思ってクライアントのOSかえたら,下の環境でhttp2通信できました.
OS: ubuntu 14.04
ブラウザ: google-chrome 50.0.2661.94

もーワケワカメ
google sync使っているから,基本は同じ環境になっているはずなんですがー
chromeが臭い気がしてきたので,クライアントの設定の方を調べることにします.

結局,鯖の設定晒して終わるっていう...
0288名無しさん@お腹いっぱい。
垢版 |
2016/06/04(土) 20:17:02.13
なんだよw
今アクセスして色々みてたけど、h2 enable なってるから出来てるじゃないかーと
レス入れようかとおもってたところだわw
0289名無しさん@お腹いっぱい。
垢版 |
2016/06/04(土) 20:21:26.39
>>287
認証方式というのは,ssl_ciphersのことで合ってますか?
コメントアウトしてみましたが,win版chromeからはhttp2での接続になりませんでした.
0292名無しさん@お腹いっぱい。
垢版 |
2016/06/04(土) 20:38:55.21
>>288
お手数おかけして,すみません

>>290
こいつで合ってますか?
ttps://www.google.co.jp/chrome/browser/canary.html

google syncを使う前(spdy indicatorのみいれた)/後とも,http2になりませんでした.
chromium browserも入れてみましたが,同様にhttp2にはなりませんでした.

バージョン固有ではない感じですかね…
まさかのクライアントOS依存,もしくはIEに入れている証明書関連かも…

nginxの問題ではない気がしてきていますが,もし進展があれば,また,報告に来ます.
0294279
垢版 |
2016/06/04(土) 21:12:37.45
ますます,よく分からないことが分かったので,報告します.
スレ違いになってきた気がするのと,今すぐに試せることも尽きてきましたので,報告はこれで最後にしようと思います.
お騒がせしました.

別ホスト(windows 7 Ultimate/Professional)のgoogle-chrome 50.0.2661.102 でhttp2が有効になりました.
win8.1の方は,新しいユーザを作成してインストール済chrome(さっきと同じ)でspdy indicatorのみ入れてアクセスしましたが,http2は有効になりませんでした.

まとめ
Win 7 Ult + google chrome → http2 ok
Win 7 Pro + google chrome → http2 ok
Win 8.1 Pro + google chrome/chrome canary/chromium browser → http2 ng
ubuntu + google chrome → http2 ok

試してみてくださった皆さま,アドバイスくださった皆さま,ありがとうございました.


>>293
ご紹介ありがとうございます.
試そうとしたのですが,いくつか知らない設定が出てきてしまったので,さっと試せそうにないです.
nginxの設定が原因だと判明しましたら,また報告に来ます.
0296名無しさん@お腹いっぱい。
垢版 |
2016/06/15(水) 10:03:29.99
そういやうちの鯖もログ見てたら友人のWin8.1Chrome51からはh2なってるけど俺のWin10Chrome53からは1.1なんだなあ
不思議だ
0299295
垢版 |
2016/06/15(水) 11:33:20.56
じゃぁ判らん、ごめん割腹してくる
0300名無しさん@お腹いっぱい。
垢版 |
2016/06/21(火) 17:53:12.21
>>279
一部ここまで出てきた情報の繰り返しになるかもだけど…

・Chromeが5/15のリリース以降NPNサポートを落とし、ALPNだけに対応するようになった
ttps://ma.ttias.be/chrome-drops-npn-support-for-http2-alpn-only/
ほんの最近の話なのでバージョンによってはまちまちかもしれない。

・OpenSSLは1.0.2からALPNに対応、1.0.1はNPNだけ対応

よってブラウザがChromeかつサーバ側がOpenSSL 1.0.1とリンクしたサーバだとHTTP/2での通信にはならない。
で、
> サーバ
> OS: debian jessie
jessieのOpenSSLは1.0.1なのでまさに上に書いた状況に陥ったということかと。

>>295さんも書いてるけどOpenSSL 1.0.2を野良ビルドしてNginxをそれにリンクすればひとまずはおkですね。
0301名無しさん@お腹いっぱい。
垢版 |
2016/08/03(水) 12:05:00.12
特定のドメインにhttpsで来た通信を証明書使わずに別に回すことってできないよね?
たくさんあるから証明書の管理面倒だ
0303295
垢版 |
2016/08/12(金) 09:14:51.24
>>295
>>300
jessie-backportsから.opensslだけ1.0.2を引っぱってきたら,できました!
ありがとうございます!

もっと頻繁に見てれば良かった…
0304279
垢版 |
2016/08/12(金) 09:15:53.90
>>303
何をトチ狂ったか…
これは,279で阿呆を晒してた私のレスです…
0305名無しさん@お腹いっぱい。
垢版 |
2016/08/17(水) 19:14:58.60
同じポートの設定ファイルを
複数のファイルに分割ってできる?
0306名無しさん@お腹いっぱい。
垢版 |
2016/08/17(水) 19:24:54.61
ポートだけならいくらでも

多分聞きたいのはこっちだけど
コンフィグの中にinclude hoge書けばそこにhogeの中身読み込んでくれるよ
0308名無しさん@お腹いっぱい。
垢版 |
2016/08/19(金) 10:17:28.80
ねぇ、これなに言ってるか分かる人いる?

https://www.wpx.ne.jp/server/news_detail.php?view_id=1442

・Nginxは静的コンテンツを高速に配信するように設計されたWebサーバーです。
・Nginxの導入により高速かつ安定したサーバー環境でWordPressを運用することが可能です。

静的コンテンツ向けのサーバーにした事が、WordPressの高速化にどう影響するの?
0309名無しさん@お腹いっぱい。
垢版 |
2016/08/19(金) 18:48:38.12
何をどう実装してんのかしらんからなんともいえんな。
リンク先には基盤システムにとあるから、ロードバランサーやらフロントエンドとして使って更にキャッシュさせてるだけかもしれんし。
0310名無しさん@お腹いっぱい。
垢版 |
2016/08/19(金) 21:17:56.04
>>309
まぁ、そういう使い方は確かにNginxの分野だからそうなのかもしれないね。
書いてある内容の意味と大きく違うけど。
0314名無しさん@お腹いっぱい。
垢版 |
2016/08/22(月) 12:25:46.74
nginx.confあたりにinclude hogeでマッチするように書けばいいんだよ
hogeにはドキュメントルート/*適当な名前みたいな感じで
0316名無しさん@お腹いっぱい。
垢版 |
2017/03/15(水) 11:29:25.06
Windowsサーバーを使ってNginx&PHP7で動かしてるんだけどfile_get_contentsした時にlocalhostのPHPが取得できん
外部サイトはOKだしlocalhostでもHTMLとか単純なTXTとかなら取得できる
なんで?
0318279
垢版 |
2017/04/10(月) 00:36:07.12
ずーっと昔,chromeでhttp2が有効にならないエラーを報告した者です.

ここ最近,firefoxでアクセスしてもSSL接続に対してエラーが出るようになったので,本格的ににおかしいと思って調べたところ,こんな記事を見付けまして,StartSSLを捨てました.
http://blog.zolesystem.info/startssl%EF%BC%88startcom%EF%BC%89%E3%81%AEssl%E8%A8%BC%E6%98%8E%E6%9B%B8%E3%81%8Ciphone%E3%81%AA%E3%81%A9%E3%81%A7%E8%AA%8D%E8%AD%98%E3%81%95%E3%82%8C%E3%81%AA%E3%81%84%E5%95%8F%E9%A1%8C/

で,SSL証明書を別のCAから発行したら有効になりました.
StartSSLが弾かれたWoSignとの一件が原因なのか,それはおいといてStartSSLの発行するSSL証明書が原因なのかは不明だけれど,Certbotの証明書に替えたらhttp2が有効になりました.

大分と時間がたったけど,一応解決したのでご報告まで.
0319名無しさん@お腹いっぱい。
垢版 |
2017/08/01(火) 15:09:32.77
リバースプロキシのlocationで
(*.)
はどんな意味ですか?
*.
とは異なりますか?
0322名無しさん@お腹いっぱい。
垢版 |
2017/08/01(火) 16:53:32.34
(.*)って普通に正規表現でしたね。
頭の中で(*.)と思い込んでてこれって正規表現じゃ無いと間違えてしまいました。
構文的にはできているのですが、何故そうなってるかが知りたくて書いてみました。
正規表現スレに移動します。
失礼しました。
0324名無しさん@お腹いっぱい。
垢版 |
2017/10/19(木) 09:38:48.89
add_header X-Content-Type-Options nosniff;
add_header X-XSS-Protection "1; mode=block";
add_header X-Robots-Tag none;
add_header X-Download-Options noopen;
add_header X-Permitted-Cross-Domain-Policies none;

これが無視されるようになってしまいました。
昨晩apcuの設定値を弄り、その直後は何もありませんでした。
今朝チェックしてみると、上記が無視されています。
apcuの設定を元に戻して再起動かけてもやはり無視されます。
どうしたら上記が有効になるでしょうか?
0325324
垢版 |
2017/10/23(月) 08:56:06.74
その後わかったのが「無視されている」のではなくて、
重複して宣言されていることでエラーが発生しているようです。
nginx.confでそれらを設定していないのに、
そのヘッダが定義されているのは何故なのでしょうか?
0326名無しさん@お腹いっぱい。
垢版 |
2017/10/25(水) 23:11:32.54
質問なのですが、location @proxy{ や、 try_files $uri @proxy など
アットマークで始まる変数(?)は、どういう意味、どこで定義されているのでしょうか?
0328名無しさん@お腹いっぱい。
垢版 |
2017/10/25(水) 23:43:42.57
>>327
ありがとうございます。
https://www.nginx.com/resources/wiki/community/faq/ にもありますね。 named location というのですね。

@、アットマークがうまくググれませんでした。さんくす。
0330名無しさん@お腹いっぱい。
垢版 |
2017/11/09(木) 17:50:22.76
charset utf-8;
と書いてもContent-Typeに追加されないのはなぜ?
0331名無しさん@お腹いっぱい。
垢版 |
2018/02/14(水) 10:00:06.96
☆ 日本の、改憲をしましょう。現在、衆議員と参議院の両院で、
改憲議員が3分の2を超えております。『憲法改正国民投票法』、
でググってみてください。国会の発議はすでに可能です。
平和は勝ち取るものです。お願い致します。☆☆
0332名無しさん@お腹いっぱい。
垢版 |
2018/03/28(水) 15:01:35.79
httpからhttpsにリダイレクトするとなぜかhttpsでもhttpsに無限リダイレクトされる
curl -v https://www.example.com/
< HTTP/2 301
< date: Wed, 28 Mar 2018 05:56:05 GMT
< content-type: text/html
< location: https://www.example.com/

http2 http1.1 IPv4,IPv6どれも変わらず

httpの設定でreturn行を無効化してrestartすればhttps側のリダイレクトも止まるんだけどなんでこんなことが起きるの?
server {
listen 80;
listen [::]:80;
server_name www.example.com;
return 301 https://$server_name$request_uri; ←ここを無効化でhttpsで接続したときの状態も変化する
}
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
0339名無しさん@お腹いっぱい。
垢版 |
2018/04/26(木) 17:00:26.38
VPSを始めたばかりなんですが、
PLESKで「静的ファイルnginxで直接処理」という項目があります。
これらに拡張子を設定すると、
Webコンテンツ側で一部表示できなくなったりします。

nginxに直接処理させた方が良いファイルって、
どんなものがあるんでしょうか?
0340名無しさん@お腹いっぱい。
垢版 |
2018/05/22(火) 06:43:40.32
知り合いから教えてもらったパソコン一台でお金持ちになれるやり方
時間がある方はみてもいいかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』

BZW1A
0341名無しさん@お腹いっぱい。
垢版 |
2018/07/20(金) 11:43:44.71
(例)otameshi.comとURLを入力したとき、
otameshi.com:8065にリダイレクトさせたいです。

proxy_pass http://localhost:8065
または proxy_pass http://127.0.0.1:8065やxxx.xxx.xxx.xxx:8065(自分のサーバIP)
としたとき、
繰り返しのリダイレクトでエラーになってしまいます。
どうすると同サーバー内のポート違いへ移動できるようになるのでしょうか?

Mattermostというソフトを動かしたいのですが、
直に8065を付ければ動かせます。
公式で紹介しているnginx.confの書き方でも同じです。
0343341
垢版 |
2018/07/23(月) 10:34:47.29
スレチ的で申し訳ないですが、教えてください。
http://sample.com:8065 → これで問題なく使える。
https://sample.com:8065 → ERR_SSL_PROTOCOL_ERROR

proxy_passで
sample.comから8065ポートへリダイレクト → リダイレクトループ
同じくhttps://sample.com:8065へリダイレクト → ERR_SSL_PROTOCOL_ERROR

この際、8065ポートへの自動リダイレクトは諦めても、
https接続できるようにしたいです。

証明書をmattermostへ継続させるには、
どのようにnginx.confを書けば良いのでしょうか?
0344名無しさん@お腹いっぱい。
垢版 |
2018/07/24(火) 04:00:05.22
>>343
redirectとproxyがごっちゃになってる

httpからhttpsにリダイレクトさせるのはnginx側で行うべきことなのでproxy_pass無関係
301とリダイレクト先URLをブラウザに返して、ブラウザ側でページを読み直させる

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

リバースプロクシしようとしてリダイレクトループになってる件はその情報だけじゃ分からん
0345343
垢版 |
2018/07/27(金) 19:32:33.77
原因がわかりました。
https://sample.com:8065の時のエラーは、
証明書の権限のようです。
rootユーザーにすると通るようです。

>>344
ありがとうございます。

location / {
proxy_pass https://localhost:8065;
}
これはsample.comにアクセスしたとき、
8065ポートでアクセスするという意味ですよね?

https://sample.comとうったとき、
繰り返しリダイレクトエラーになってしまいます。
この繰り返しエラーを防ぐにはどうしたらよいですか?

https://sample.com:8065入力はOKになりました。
0347341
垢版 |
2018/07/29(日) 01:50:37.70
>>346
proxy_set_headerをどう変えても、
全く変化がありませんでした。
confファイルではなくnginx自体の設定とかだったりするんでしょうか?

httpsアクセスではリダイレクトエラーですが、
すべてをhttpだと空ファイルのダウンロードになるようです。
0348名無しさん@お腹いっぱい。
垢版 |
2018/08/01(水) 19:35:42.59
基本的な質問。

server {
listen xx.xx.xx.xx:443 ssl http2;
server_name hoge.com;
}

これが同じ.confだったり、
インクルードした別confファイルに複数書いてあった場合、
それぞれ追記している状態になるのでしょうか?
被っていたらそれは後のが上書き?
それとも最後のserverだけが有効になるとかでしょうか?
レスを投稿する


ニューススポーツなんでも実況