thinkPHP上到服务器出现的一点问题
2015-08-20 15:54
274 查看
今天把代码上到服务器出现一点问题,记下来防止以后出现同样的问题
1.session跨页面丢失,
2个方面,在php.ini上有一个参数session.usr_tran_sid改为1
另个看下phpinfo里session.save_path的路径是否可写,可能是因为文件不可写,session存不进去,
2.框架内部$_get取不到值
后来测试发现admin/xxx.html?id=1这种形式取不出来,admin.php/xxx.html?id=1能获取到,初步判断是nginx的rewrite重写有问题,
重写代码如下,
# fastcgi_param PATH_INFO $fastcgi_path_info;
# fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
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;
}
location ~* .*\.(gif|jpg|png|bmp|swf|js|css)(.*)
{
expires 7d;
break;
}
location /
{
index index.html index.htm index.php;
# try_files $uri /index.php$uri;
if (!-e $request_filename) {
rewrite ^/index.php(.*)$ /index.php?s=$1 last;
rewrite ^/admin/(.*)$ /admin.php/$1?s=$1 last;
rewrite ^(.*)$ /index.php?s=$1 last;
break;
}
}
}
重点是这三行
参考文献
http://blog.jjonline.cn/linux/159.html http://www.sundabao.com/nginx%E4%B8%8B%E6%94%AF%E6%8C%81thinkphp%E7%9A%84pathinfo%E5%92%8Curl-rewrite%E6%A8%A1%E5%BC%8F/
1.session跨页面丢失,
2个方面,在php.ini上有一个参数session.usr_tran_sid改为1
另个看下phpinfo里session.save_path的路径是否可写,可能是因为文件不可写,session存不进去,
2.框架内部$_get取不到值
后来测试发现admin/xxx.html?id=1这种形式取不出来,admin.php/xxx.html?id=1能获取到,初步判断是nginx的rewrite重写有问题,
重写代码如下,
# fastcgi_param PATH_INFO $fastcgi_path_info;
# fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
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;
}
location ~* .*\.(gif|jpg|png|bmp|swf|js|css)(.*)
{
expires 7d;
break;
}
location /
{
index index.html index.htm index.php;
# try_files $uri /index.php$uri;
if (!-e $request_filename) {
rewrite ^/index.php(.*)$ /index.php?s=$1 last;
rewrite ^/admin/(.*)$ /admin.php/$1?s=$1 last;
rewrite ^(.*)$ /index.php?s=$1 last;
break;
}
}
}
重点是这三行
参考文献
http://blog.jjonline.cn/linux/159.html http://www.sundabao.com/nginx%E4%B8%8B%E6%94%AF%E6%8C%81thinkphp%E7%9A%84pathinfo%E5%92%8Curl-rewrite%E6%A8%A1%E5%BC%8F/
相关文章推荐
- php display_errors和error_reporting的赋值方法
- php socket
- php 16进制压缩
- ThinkPHP字符截取函数msubstr()
- sublime text配置php运行环境
- sublime text配置php运行环境
- PHP框架 CodeIgniter学习
- Atitit.ati dwr的原理and设计 attilax 总结 java php 版本
- Atitit.ati dwr的原理and设计 attilax 总结 java php 版本
- Atitit.ati dwr的原理and设计 attilax 总结 java php 版本
- jtextpanel中获取图片
- array_multisort — 对多个数组或多维数组进行排序
- 两段 PHP 代码比较优劣
- yii中将log存入数据库是修改原有风格
- Solaris 11学习小结1:开启SSH/TELNET/FTP服务
- PHP对表单提交特殊字符的过滤和处理方法汇总
- php学习过程二
- php-socket发送邮箱
- PHP之APC缓存详细介绍(学习整理)
- FTPClient上传文件乱码