本文共 3542 字,大约阅读时间需要 11 分钟。
在windows环境下正常
上传到服务器Nginx,除了首页能打开外,其它都不能打开,打开都是找不到文件
Nginx系统是通过OneinStack来安装的
这是因为ThinkPHP需要pathinfo的支持,开启pathinfo办法
找到对应虚拟空间的配置文件
路径:/usr/local/nginx/conf/vhost/cms.xxxx.vip.conf
文件中找到对应那个虚拟目录 (每个人的服务器可能不相同)
原代码:
修改成:
参考:
erver {
listen 443 ssl spdy;ssl_certificate 1_ss.linuxeye.com_bundle.crt;ssl_certificate_key ss.linuxeye.com.key;ssl_ciphers "CHACHA20:GCM:HIGH:!DH:!RC4:!aNULL:!eNULL:!LOW:!3DES:!MD5:!EXP:!PSK:!SRP:!DSS";ssl_session_cache shared:SSL:10m;ssl_session_timeout 10m;ssl_stapling on;ssl_stapling_verify on;resolver 8.8.8.8 8.8.4.4 valid=300s;resolver_timeout 5s;server_name ss.linuxeye.com;access_log off;index index.html index.htm index.jsp index.php;root /home/wwwroot/ss.linuxeye.com;if (!-e $request_filename) { rewrite ^/(.*)$ /index.php/$1 last; break; }location ~ [^/]\.php(/|$) { fastcgi_split_path_info ^(.+\.php)(/.+)$; try_files $fastcgi_script_name =404; set $path_info $fastcgi_path_info; fastcgi_param PATH_INFO $path_info; fastcgi_pass unix:/dev/shm/php-cgi.sock; fastcgi_index index.php; include fastcgi.conf; }location ~ /\.ht { deny all; }location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|flv|ico)$ { expires 30d; }location ~ .*\.(js|css)?$ { expires 7d; }}引用:https://oneinstack.com/question/313/
将虚拟主机配置文件/usr/local/nginx/conf/vhost/www.example.com.conf中:
#fastcgi_pass remote_php_ip:9000; fastcgi_pass unix:/dev/shm/php-cgi.sock; fastcgi_index index.php; include fastcgi_params; set $real_script_name $fastcgi_script_name; if ($fastcgi_script_name ~ "^(.+?\.php)(/.+)$") { set $real_script_name $1; set $path_info $2; } fastcgi_param SCRIPT_FILENAME $document_root$real_script_name; fastcgi_param SCRIPT_NAME $real_script_name; fastcgi_param PATH_INFO $path_info; }
改成如下:
#fastcgi_pass remote_php_ip:9000; fastcgi_pass unix:/dev/shm/php-cgi.sock; fastcgi_index index.php; fastcgi_split_path_info ^(.+\.php)(/.*)$; fastcgi_param PATH_INFO $fastcgi_path_info; include fastcgi_params; }
重新加载nginx
service nginx reload
引用:https://oneinstack.com/question/785/