質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
87.20%
nginx

nginixは軽量で高性能なwebサーバーの1つです。BSD-likeライセンスのもとリリースされており、あわせてHTTPサーバ、リバースプロキシ、メールプロキシの機能も備えています。MacOSX、Windows、Linux、上で動作します。

CakePHP

CakePHPは、PHPで書かれたWebアプリケーション開発用のフレームワークです。 Ruby on Railsの考え方を多く取り入れており、Railsの高速性とPHPの機動性を兼ね備えています。 MVCやORMなどを「規約優先の考え方」で利用するため、コードを書く手間を省くことができます。 外部のライブラリに依存しないので、単体での利用が可能です。

受付中

Nginxのディレクティブ設定について

Nanohana
Nanohana

総合スコア123

nginx

nginixは軽量で高性能なwebサーバーの1つです。BSD-likeライセンスのもとリリースされており、あわせてHTTPサーバ、リバースプロキシ、メールプロキシの機能も備えています。MacOSX、Windows、Linux、上で動作します。

CakePHP

CakePHPは、PHPで書かれたWebアプリケーション開発用のフレームワークです。 Ruby on Railsの考え方を多く取り入れており、Railsの高速性とPHPの機動性を兼ね備えています。 MVCやORMなどを「規約優先の考え方」で利用するため、コードを書く手間を省くことができます。 外部のライブラリに依存しないので、単体での利用が可能です。

1回答

0リアクション

0クリップ

170閲覧

投稿2017/08/19 04:15

編集2017/08/19 07:39

Nginxを使っているサーバーで以下のような運用をしたいと思います。

http://xxx.net/ →Wordpressを使用
http://xxx.net/topics/ →Wordpressを使用
http://xxx.net/topics/api/** →cakephpを使用
http://xxx.net/informations/ →Cakephpを使用

cakephpのルートディレクトリは
/var/www/html/xxx/app/webroot にあり、
/var/www/html/xxx/app/Controller/TopicsController.php にコントローラーはあるというような構成になっています

現状の状況は以下の通りです。
WordPressは現状xxx.netで動いています。
CakePHPは現状yyy.net(別ドメイン)で動いています。(/var/www/html/xxx/app/webroot がルートディレクトリ)。
yyy.net/topics/api/** は現状でも見ることができるのですが、
xxx.net/topics/api/** でもアクセスできるようにしたいと考えています。

〜なぜこの処置をするのか〜

現状、yyy.netとxxx.netで運営していてyyy.netではcakephp、
xxx.netではwordpressを使っています。

最終的に
http://yyy.net/ →Wordpressを使用
http://yyy.net/topics/ →Wordpressを使用
http://yyy.net/topics/api/** →cakephpを使用
http://yyy.net/informations/ →Cakephpを使用
という形にしたいため、wordpressが動いているxxx.netでNginxの設定をいじって

http://xxx.net/ →Wordpressを使用
http://xxx.net/topics/ →Wordpressを使用
http://xxx.net/topics/api/** →cakephpを使用
http://xxx.net/informations/ →Cakephpを使用
という構成で検証をして、問題なければyyy.netで同じような設定を導入しようと思っています。

以下の設定でうまくいかないのですが、どのように設定すれば良いのでしょうか...

lang

server { listen 80; server_name xxx.net; access_log /home/kusanagi/xxx/log/nginx/access.log main; error_log /home/kusanagi/xxx/log/nginx/error.log warn; charset UTF-8; client_max_body_size 16M; root /home/kusanagi/xxx/DocumentRoot; index index.php index.html index.htm; location /topics/article{ root /var/www/html/xxx/app/webroot; index index.php index.html; # try_files /topics/$1 /sample/$1/ /topics/index.php?$1&$args; #try_files $uri $uri?$args $uri/ /index.php?$uri&$args /index.php?$args; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /var/www/html/xxx/app/webroot/$fastcgi_scr ipt_name; try_files /topics/$1 /topics/$1/ /subdir/index.php?topics&$1&$args; fastcgi_param PATH_INFO $fastcgi_path_info; include fastcgi_params; } location /informations { root /var/www/html/xxx/app/webroot; index index.php index.html; # try_files /topics/$1 /sample/$1/ /topics/index.php?$1&$args; #try_files $uri $uri?$args $uri/ /index.php?$uri&$args /index.php?$args; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /var/www/html/xxx/app/webroot/$fastcgi_script_name; try_files /informations/$1 /informations/$1/ /subdir/index.php?informations&$1&$args; include fastcgi_params; } location / { try_files $uri $uri/ /index.php?$args; } location = /favicon.ico { log_not_found off; access_log off; } location ~* /\. { deny all; } location ~* /(?:uploads|files)/.*\.php$ { deny all; } location ~ [^/]\.php(/|$) { fastcgi_split_path_info ^(.+?\.php)(/.*)$; if (!-f $document_root$fastcgi_script_name) { return 404; } fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; fastcgi_buffers 256 128k; fastcgi_buffer_size 128k; fastcgi_intercept_errors on; fastcgi_read_timeout 120s; set $do_not_cache 1; ## page cache set $device "pc"; if ($request_method = POST) { set $do_not_cache 1; } if ($query_string != "") { set $do_not_cache 1; } if ($http_cookie ~* "comment_author|wordpress_[a-f0-9]+|wp-postpass|wordpress_no_cache|wordpress_logged_in") { set $do_not_cache 1; } if ($request_uri ~* "(/wp-admin/|/xmlrpc.php|/wp-(app|cron|login|register|mail).php|wp-.*.php|/feed/|index.php|wp-comments-popup.php|wp-links-opml.php|wp-locations.php|sitemap(_index)?.xml|[a-z0-9_-]+-sitemap([0-9]+)?.xml)") { set $do_not_cache 1; } if ($http_user_agent ~* " Android |\(iPad|Android; Tablet; .+Firefox") { set $device "tablet"; } if ($http_user_agent ~* " Android .+ Mobile |\(iPhone|\(iPod|IEMobile|Android; Mobile; .+Firefox|Windows Phone") { set $device "smart"; } fastcgi_cache wpcache; fastcgi_cache_key "$device:$request_method:$scheme://$host$request_uri"; fastcgi_cache_valid 200 10m; fastcgi_no_cache $do_not_cache; fastcgi_cache_bypass $do_not_cache; add_header X-F-Cache $upstream_cache_status; add_header X-Signature KUSANAGI; } }

以下のような質問にはリアクションをつけましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

リアクションが多い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

下記のような質問は推奨されていません。

  • 間違っている
  • 質問になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

適切な質問に修正を依頼しましょう。

まだ回答がついていません

会員登録して回答してみよう

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
87.20%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

nginx

nginixは軽量で高性能なwebサーバーの1つです。BSD-likeライセンスのもとリリースされており、あわせてHTTPサーバ、リバースプロキシ、メールプロキシの機能も備えています。MacOSX、Windows、Linux、上で動作します。

CakePHP

CakePHPは、PHPで書かれたWebアプリケーション開発用のフレームワークです。 Ruby on Railsの考え方を多く取り入れており、Railsの高速性とPHPの機動性を兼ね備えています。 MVCやORMなどを「規約優先の考え方」で利用するため、コードを書く手間を省くことができます。 外部のライブラリに依存しないので、単体での利用が可能です。