ThankPHP项目部署在nginx下
ThankPHP项目一般部署在lamp下一般没有问题,部署在lnmp就有点水土不服了,,,报404、ajax err,,,神马的
需要修改下nginx的配置:
#方法一: kkk@ubuntu:/etc/nginx/sites-enabled$ sudo cat default [sudo] password for kkk: server { listen 80 default_server; root /data/www/t1; index index.php index.html index.htm; server_name localhost; location / { # try_files $uri /index.php$url; if (!-e $request_filename) { rewrite ^/(.*)$ /index.php/$1 last; break; } } location ~ \.php/?.*$ { #root /var/www/html/website; fastcgi_pass 127.0.0.1:9001; fastcgi_index index.php; #加载Nginx默认"服务器环境变量"配置 include fastcgi.conf; #设置PATH_INFO并改写SCRIPT_FILENAME,SCRIPT_NAME服务器环境变量 set $fastcgi_script_name2 $fastcgi_script_name; if ($fastcgi_script_name ~ "^(.+\.php)(/.+)$") { set $fastcgi_script_name2 $1; set $path_info $2; } fastcgi_param PATH_INFO $path_info; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name2; fastcgi_param SCRIPT_NAME $fastcgi_script_name2; } } #---------------------------------------------------------------------------------- #方法二: kkk@ubuntu:/etc/nginx/sites-enabled$ cat default server { listen 80 default_server; root /data/www/t1; index index.php index.html index.htm; server_name localhost; location / { index index.htm index.html index.php; #访问路径的文件不存在则重写URL转交给ThinkPHP处理 try_files $uri /index.php$uri; } location ~ .+\.php($|/) { #root /var/www/html/website; fastcgi_pass 127.0.0.1:9001; fastcgi_index index.php; #设置PATH_INFO,注意fastcgi_split_path_info已经自动改写了fastcgi_script_name变量, #后面不需要再改写SCRIPT_FILENAME,SCRIPT_NAME环境变量,所以必须在加载fastcgi.conf之前设置 fastcgi_split_path_info ^(.+\.php)(/.*)$; fastcgi_param PATH_INFO $fastcgi_path_info; #加载Nginx默认"服务器环境变量"配置 include fastcgi.conf; } } kkk@ubuntu:/etc/nginx/sites-enabled$
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。