コンテンツにスキップ
メインメニュー
メインメニュー
サイドバーに移動
非表示
案内
メインページ
最近の更新
未作成ページ
おまかせ表示
ヘルプ
MonoBook
検索
検索
ログイン
個人用ツール
ログイン
ログアウトした編集者のページ
もっと詳しく
投稿記録
トーク
「
Raspberry PiにSimple NuGet Serverを構築する
」を編集中
ページ
議論
日本語
閲覧
編集
ソースを編集
履歴表示
ツール
ツール
サイドバーに移動
非表示
操作
閲覧
編集
ソースを編集
履歴表示
全般
リンク元
関連ページの更新状況
特別ページ
ページ情報
警告:
ログインしていません。編集を行うと、あなたの IP アドレスが公開されます。
ログイン
または
アカウントを作成
すれば、あなたの編集はその利用者名とともに表示されるほか、その他の利点もあります。
スパム攻撃防止用のチェックです。 けっして、ここには、値の入力は
しない
でください!
<br /> ==必要なパッケージを入れる== [[Simple NuGet Server]]の公式サイトに書いてあるパッケージではちょっと足りない模様。 apt-get update apt-get install git apt-get install nginx apt-get install php-fpm php-zip php-bz2 php-xml php-json php-sqlite3 php-common php-mbstring php-intl php-readline php-bcmath php-curl ==Simple NuGet Serverを落としてくる== [[Simple NuGet Server]]の[[ソースコード]]を[[github]]から頂いてくる。 cd /var/www/ git clone https://github.com/Daniel15/simple-nuget-server.git ソースコードを手に入れたら、NuGetパッケージをPUSHするときに使うAPIキー(パスワード)を書き換える。 本家本元のフルバージョンのNuGet Serverはユーザーごとに発行されるものだが、 Simple NuGet Serverは個人利用しか想定していないので1個しか設定できない。 だがそれがいい。 cd simple-nuget-server vi inc/config.php Config::$apiKey = '書き換える'; wwwディレクトリのパーミッションを書き換える。 chown -R www-data /var/www/simple-nuget-server ==PHP-FPMの設定を変更する== /etc/php/7.3/fpm/pool.d/www.conf nugetパッケージの保管場所のパーミッションに合わせる。 listen.owner = www-data listen.group = www-data listen.mode = 0660 dynamicが必要なほど需要はないし、リソースの限られた[[ラズパイ]]ではstaticが望ましい。というか[[nginx]]は普通の[[レンタルサーバー]]での運用でもstaticの方が安定している。 pm = static pm.max_children = 1 ==nginxの設定を変更する== /etc/nginx/sites-enabled/default<source lang="text"> server { server_name _; listen 80 default_server; #listen [::]:80 default_server; root /var/www/simple-nuget-server/public; index index.php index.html index.htm; // 64MBまで送受信できるようにする。 // php.iniのupload_max_filesizeとpost_max_sizeも書き換える。 client_max_body_size 64M; // リライトルール rewrite ^/$ /index.php; rewrite ^/\$metadata$ /metadata.xml; rewrite ^/Search\(\)/\$count$ /count.php; rewrite ^/Search\(\)$ /search.php; rewrite ^/Packages\(\)$ /search.php; rewrite ^/Packages\(Id='([^']+)',Version='([^']+)'\)$ /findByID.php?id=$1&version=$2; rewrite ^/GetUpdates\(\)$ /updates.php; rewrite ^/FindPackagesById\(\)$ /findByID.php; # NuGet.exe sometimes uses two slashes (//download/blah) rewrite ^//?download/([^/]+)/([^/]+)$ /download.php?id=$1&version=$2; rewrite ^/([^/]+)/([^/]+)$ /delete.php?id=$1&version=$2; # NuGet.exe adds /api/v2/ to URL when the server is at the root rewrite ^/api/v2/package/$ /index.php; rewrite ^/api/v2/package/([^/]+)/([^/]+)$ /delete.php?id=$1&version=$2; # Used with X-Accel-Redirect location /packagefiles { internal; root /var/www/simple-nuget-server/; } location ~ \.php?$ { include /etc/nginx/fastcgi_params; fastcgi_pass unix:/run/php/php7.3-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root/$fastcgi_script_name; } location = /index.php { dav_methods PUT DELETE; include /etc/nginx/fastcgi_params; fastcgi_pass unix:/run/php/php7.3-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root/$fastcgi_script_name; # PHP doesn't parse request body for PUT requests, so fake a POST. fastcgi_param REQUEST_METHOD POST; fastcgi_param HTTP_X_METHOD_OVERRIDE $request_method; } } </source> == 関連項目 == * [[Simple NuGet Server]] * [[Nginxとphpでファイルアップロードの制限を緩くする]] * [[FreeBSD12にnginxとphpの環境を構築する]] [[category: Raspberry Pi]] [[category: .NET]]
編集内容の要約:
MonoBookへの投稿はすべて、他の投稿者によって編集、変更、除去される場合があります。 自分が書いたものが他の人に容赦なく編集されるのを望まない場合は、ここに投稿しないでください。
また、投稿するのは、自分で書いたものか、パブリック ドメインまたはそれに類するフリーな資料からの複製であることを約束してください(詳細は
MonoBook:著作権
を参照)。
著作権保護されている作品は、許諾なしに投稿しないでください!
このページを編集するには、下記の確認用の質問に回答してください (
詳細
):
1たす1は?(全角で入力してください)
キャンセル
編集の仕方
(新しいウィンドウで開きます)
本文の横幅制限を有効化/無効化