首先我用了symfonyhttp-foundation這個組件。
ajax請求端:
$.ajax({ url: jsui.www + 'comment/add', data: $(this).serialize(), type: $(this).attr('method'), error: function(request) { $('.comt-loading').slideUp(300); $('.comt-error').slideDown(300).html(request.responseText); }, success: function(data) {...} ...
php響應端:
public function add(){ //header('HTTP/1.1 405 Method Not Allowed'); //echo 'Content'; //exit; //這樣寫也返回200 $response = new Response( 'Content405!', Response::HTTP_METHOD_NOT_ALLOWED, array('content-type' => 'text/html') ); //var_dump($response);die(); return $response; }
nginx配置:
http { include mime.types; default_type application/octet-stream; #log_format main '$remote_addr - $remote_user [$time_local] "$request" ' # '$status $body_bytes_sent "$http_referer" ' # '"$http_user_agent" "$http_x_forwarded_for"'; #access_log logs/access.log main; sendfile on; #tcp_nopush on; #keepalive_timeout 0; keepalive_timeout 65; #gzip on; server { listen 8080; server_name localhost; #charset koi8-r; #access_log logs/host.access.log main; location / { root E:\Nginx\www; index index.html index.htm index.php; if (!-e $request_filename) { #一級目錄下 #rewrite ^/(.*)$ /index.php/$1 last; #網域名稱下的二級目錄 rewrite ^/newblog/web/(.*)$ /newblog/web/index.php/$1 last; } } #error_page 404 /404.html; # redirect server error pages to the static page /50x.html # error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } # proxy the PHP scripts to Apache listening on 127.0.0.1:80 # #location ~ \.php$ { # proxy_pass http://127.0.0.1; #} # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 # location ~ \.php { root E:\Nginx\www; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_split_path_info ^(.+\.php)(.*)$; #增加這一句 fastcgi_param PATH_INFO $fastcgi_path_info; #增加這一句 fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; }
這是返回
回複內容:
首先我用了symfonyhttp-foundation這個組件。
ajax請求端:
$.ajax({ url: jsui.www + 'comment/add', data: $(this).serialize(), type: $(this).attr('method'), error: function(request) { $('.comt-loading').slideUp(300); $('.comt-error').slideDown(300).html(request.responseText); }, success: function(data) {...} ...
php響應端:
public function add(){ //header('HTTP/1.1 405 Method Not Allowed'); //echo 'Content'; //exit; //這樣寫也返回200 $response = new Response( 'Content405!', Response::HTTP_METHOD_NOT_ALLOWED, array('content-type' => 'text/html') ); //var_dump($response);die(); return $response; }
nginx配置:
http { include mime.types; default_type application/octet-stream; #log_format main '$remote_addr - $remote_user [$time_local] "$request" ' # '$status $body_bytes_sent "$http_referer" ' # '"$http_user_agent" "$http_x_forwarded_for"'; #access_log logs/access.log main; sendfile on; #tcp_nopush on; #keepalive_timeout 0; keepalive_timeout 65; #gzip on; server { listen 8080; server_name localhost; #charset koi8-r; #access_log logs/host.access.log main; location / { root E:\Nginx\www; index index.html index.htm index.php; if (!-e $request_filename) { #一級目錄下 #rewrite ^/(.*)$ /index.php/$1 last; #網域名稱下的二級目錄 rewrite ^/newblog/web/(.*)$ /newblog/web/index.php/$1 last; } } #error_page 404 /404.html; # redirect server error pages to the static page /50x.html # error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } # proxy the PHP scripts to Apache listening on 127.0.0.1:80 # #location ~ \.php$ { # proxy_pass http://127.0.0.1; #} # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 # location ~ \.php { root E:\Nginx\www; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_split_path_info ^(.+\.php)(.*)$; #增加這一句 fastcgi_param PATH_INFO $fastcgi_path_info; #增加這一句 fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; }
這是返回
這個應該和nginx沒關係吧