我和NGINX的关系很紧张,这让我很疯狂。我有Ubuntu 12.04。VirtualBox上有3个LTS。我按照以下说明安装了NGINX-MYSQL-PHP:
然后我在/etc/nginx/sites available/default中设置:
location ~ \.php$ {
try_files $uri =404;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
本地主机和信息。php被正确执行。现在我想建立一个本地网站,并尝试做一些重定向。因此,我在/usr/share/nginx/www中创建了一个名为mywebsite的新文件夹,放置索引。php内置一个echo指令,一个我重定向到的php脚本,在站点中添加了一个新的配置文件,并在站点中添加了一个链接,并在nginx中禁用应用程序/八位字节流。conf,以避免下载脚本文件。因此,我将我的新配置文件设置为:
server {
listen 80;
root /usr/share/nginx/www/mysite;
index index.php index.html index.htm;
server_name www.mysite.com;
location / {
try_files $uri $uri/ /index.html;
if (!-e $request_filename){
rewrite ^/location/([0-9]+)/device/([0-9]+)/senseddata/$ /senseddata.php break;
rewrite ^/location/([0-9]+)/device/([0-9]+)/senseddata/lasthour/$ /senseddata.php break;
rewrite ^/location/([0-9]+)/device/([0-9]+)/senseddata/daily/$ /senseddata.php break;
}
}
error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/www;
}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
location ~ \.php$ {
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
try_files $uri =404;
}
# deny access to .htaccess files, if Apache's document root
# concurs with nginx's one
#
location ~ /\.ht {
deny all;
}
}
那么到底发生了什么?我ndex.php执行得当。重写做得很好,但是脚本没有执行。我只看到我写的整个代码显示在浏览器中。有什么问题?提前感谢。
尝试添加fastcgi\u split\u path\u info^(.\.php)(/)$
至
位置~\。php$
并重新启动nginx。
从我的配置示例
location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
try_files $uri =404;
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
还要检查PHP文件中的开始标记。如果您使用
问题内容: 我最近一直在尝试在计算机上安装php和apache。几个小时后,它们就安装了。我已经像大家一样修改了httpd.conf和php.ini文件。然后,我创建了一个简单的php脚本: 但是,当我尝试使用它运行时,只会显示源代码而不是执行代码。我正在使用apache2,php5和Windows Vista。我一直在互联网上搜索失败,并且几乎要把头撞在墙上。谁能救我脱离脑震荡? 编辑的行: P
我是PHP新手。为什么Apache只显示文件内容而不执行? 我用PHP5.5在ubuntu 14的apache2子域上安装了prosper202。9-1本图4。20(cli)(构建时间:2016年10月3日13:00:37)和php fpm,但它只显示,它不会引导我进入设置过程。 怎么了,怎么运行?
我最近一直试图在我的电脑上安装PHP和Apache。几个小时后,它们就安装好了。我已经像大家说的那样修改了httpd.conf和php.ini文件。然后我创建了一个简单的PHP脚本: 但是当我尝试使用它只是显示源代码,而不是执行源代码。我正在使用Apache2、PHP5和WindowsVista。 编辑行: PHP。INI: HTTPD。形态
第一次与Laravel和Beanstalk合作。我加载了我的代码,主页上说权限被拒绝,当我添加/public时,它说找不到。 经过一些搜索,我更新了我的文件的DocumentRoot从到,执行了“sudo服务httpd重启”,现在它在我的EC2主页上显示以下未格式化的文本 (http://craftaxethrowingtimers-env.eu-west-1.elasticbeanstalk.c
我对IntelliJ有问题--如果我用Ctrl+单击该类,它会显示一个类的“反编译”版本,而不是它的源代码。 这就是我所看到的: 我正在尝试打开常规的JDK源文件。 src.zip没有损坏-我可以通过WinRAR打开它 当将JDK1.8.0_161添加到IntelliJ中时,它会自动找到src.zip。当手动将src.zip添加到jbsdk8u112b287.2_windows_x86 Sourc
我有多模块Android/Gradle项目。该项目有两个Java模块和几个Android模块。我通过runnig项目根目录中的sonarRunner任务来启动sonar。不幸的是,“代码行”、“文件”、“函数”、“复杂性”等不包括Android.java文件。 谢谢