我已经安装了PHP,Apache和fastcgi_handler: emerge dev-lang/php www-apache/mod_fastcgi_handler 我设法通过更新/etc/apache2/modules.d/70_mod_php5.conf中的相关行 至: # AddHandler application/x-httpd-php .php .php5 .phtml # AddHandler application/x-httpd-php-source .phps AddHandler fcgi:/var/run/php-fpm.socket .php .php5 和/etc/conf.d/apache2来 APACHE2_OPTS="-D DEFAULT_VHOST -D INFO -D SSL -D SSL_DEFAULT_VHOST -D SUEXEC -D LANGUAGE -D PHP5 -D FASTCGI_HANDLER" 在我的文档根目录中,我有以下文件来validation安装: <?php echo '<pre>'; var_dump(exec('whoami')); var_dump(php_sapi_name()); 然后我有以下的虚拟主机: <IfDefine DEFAULT_VHOST> <VirtualHost localhost:80> ServerName local.testdomain.com ServerAlias local.testdomain.com SuExecUserGroup foobar foobar […]
(我search了这个论坛几个小时,发现了一些话题,但没有人为我工作) 我使用WordPress : Varnish + Nginx + PHP-FPM + APC + W3 Total Cache + PageSpeed 。 当我使用光油时,我第一次打电话给www.mysite.com只用了10%的CPU。 调用第二次,它将被caching。 问题是在URL中传递请求参数 。 只有一个请求( www.mysite.com?1 = 1)显示在top : PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 7609 nginx 20 0 438m 41m 28m S 11.6 7.0 0:00.35 php-fpm 7606 nginx 20 0 437m […]
我在Debian Wheezy上有这个错误,我不明白我在想什么。 从php5-fpm的日志是确定的。 来自apache2日志的错误 : [error] (2)No such file or directory: FastCGI: failed to connect to server "/var/lib/apache2/fastcgi/php5.fastcgi": connect() failed [error] FastCGI: incomplete headers (0 bytes) received from server "/var/lib/apache2/fastcgi/php5.fastcgi" fastcgi.conf的内容: <IfModule mod_fastcgi.c> AddHandler fastcgi-script .fcgi #FastCgiWrapper /usr/lib/apache2/suexec FastCgiIpcDir /var/lib/apache2/fastcgi </IfModule> php5-fpm.conf的内容: <IfModule mod_fastcgi.c> Alias /php5.fastcgi /var/lib/apache2/fastcgi/php5.fastcgi AddHandler php-script .php FastCGIExternalServer /var/lib/apache2/fastcgi/php5.fastcgi -socket /var/run/php5-fpm.sock -idle-timeout […]
我正在创build一个免费的共享主机服务,以获得乐趣和学习。 我做了一个简单的表单,用户input子域名和ftp密码。 当用户点击提交时,脚本生成一个linux用户,用crypt()encryptioninput的密码,然后将数据发送到一个linux脚本。 以下是完整脚本的错误部分: echo "[$1] user = $1 group = $1 listen = /var/run/sock_$1.sock pm = dynamic pm.max_children = 5 pm.start_servers = 2 pm.min_spare_servers = 1 pm.max_spare_servers = 3 php_value[disable_functions] = \"phpinfo, system, exec, shell_exec, passthru , ini_alter, dl, pfsockopen, openlog, syslog, readlink, symlink, link, leak, fsockopen, popen, escapeshellcmd, apache_child_terminate apache_get_modules, apache_get_version, apache_getenv, apache_note,apache_setenv,virtual\" […]
我在一个由CentOS 6.4支持的LEMP堆栈上安装了WordPress。 我今天安装了WP-DBManager插件,它显示了下面提到的错误: Your backup folder MIGHT be visible to the public To correct this issue, move the .htaccess file from wp-content/plugins/wp-dbmanager to /var/www/example.com/public_html/wp-content/backup-db 但是,我们怎么能做到这一点,因为Nginx不支持.htaccess文件。 请告诉我什么权限,我应该给位于wp-content文件夹中的backup-db文件夹。 该文件夹中的.htaccess文件包含以下代码: <Files ~ ".*\..*"> order allow,deny deny from all </Files> 这时候我直接打开那个“backup-db”文件夹,ngnix显示403 Forbidden错误。 但是,如果有人直接链接到位于该文件夹中的备份zip文件,则可以轻松地下载备份。 请帮帮我!
我需要更长时间执行PHP,而其他任何事情都可能成为问题。 我以为我已经这样做了,但我仍然从我最近的wordpress安装获取网关超时。 php-fpm池具有以下configuration [john] user = john group = john listen = 127.0.0.1:9002 listen.owner = www listen.group = www pm = dynamic pm.max_children = 5 pm.start_servers = 2 pm.min_spare_servers = 1 pm.max_spare_servers = 3 php_admin_value[max_execution_time] = 300 php_admin_value[max_input_time] = 120 语法是好的,但脚本超时约30秒,我不知道还有什么我错过了。 这可能是矫枉过正,但我很匆忙,会后来学习,随意解释,但如果有人能告诉我所有的价值,我可以增加,用暴力来解决这个问题,并解决这将是伟大的。
我真的不知道还有什么地方可以find答案。 网上的每一个指南或问题说检查client_max_body_size并解决它。 然而,对于我来说,我正在尝试对我自己的服务器上的PHP文件执行大的PUT请求。 我有… client_max_body_size 32M; 在nginx.conf服务器块中。 我知道这是有效的,因为WordPress的正确的上传大小设置为32MB。 除此之外,我发现我需要检查3个PHPvariables,我不记得它们是什么,但它们都足够远(在几百MB)。 也许我需要做一些缓冲区? 我不知道 :( 我正在使用的脚本是与第三方服务进行通信的代理脚本。 它logging所有的数据输出,这是目前为止的日志..不知道这是否可以暗示一个问题。 我认为下面是服务器正在发送的内容(因为它在日志文件中,并且正在写入STDOUT,所以我假定php代理脚本正在尝试写入它想要发送的头文件)。 当我使用chrome开发工具时,我没有看到Expect: 100-continue 。 难道这有什么关系吗? 编辑:查看PHP源代码后,它似乎是一个有100个继续的“错误”,这是搞砸了代理脚本…所以忽略下面的所有输出。 我想我会把它放在其他地方,以防万一。 "PUT /rest/cart HTTP/1.1" "HOST: staging.site.com" "CONNECTION: keep-alive" "CONTENT-LENGTH: 2695" "ACCEPT: application/json, text/javascript, */*; q=0.01" "CACHE-CONTROL: no-cache" "ORIGIN: http://staging.site.com" "X-REQUESTED-WITH: XMLHttpRequest" "USER-AGENT: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/30.0.1599.37 Safari/537.36 […]
我使用Ansible在Vagrant框中编译和configurationNginx。 如果我从框中运行curl http://localhost/ ,我得到预期的响应( phpinfo() )。 如果我从我的Mac主机访问URL http://testapp:8080/ ,那么我无法连接。 我的configuration如下: HOST:/ etc / hosts 192.168.100.10 testapp 主持人:vagrantfile Vagrant.configure("2") do |config| config.vm.define "web" do |web_config| web_config.vm.box = "raring64" web_config.vm.box_url = "https://dl.dropboxusercontent.com/s/{{redacted}}/raring64.box" web_config.vm.network "forwarded_port", guest: 80, host: 8080 web_config.vm.network "private_network", ip: "192.168.100.10" web_config.vm.provision :ansible do |ansible| ansible.playbook = "devops/webserver.yml" ansible.hosts = "webservers" ansible.inventory_file = "devops/hosts" ansible.verbosity = […]
所以我试图在debian wheezy服务器上第一次运行php5-fpm的nginx web服务器 打一个PHP文件显示简单的File not found 我已经做了研究(实际上浪费了很多时间),有很多人有类似的问题,但我没有成功地纠正它与他们的工作。 我仍然有同样的错误: $ tail /var/log/nginx/access.log /var/log/nginx/error.log /var/log/php5-fpm.log | less ==> /var/log/nginx/error.log <== 2013/10/26 21:36:00 [error] 6900#0:* 1971 FastCGI在stderr中发送:“主脚本未知” ,从上游读取响应头时, 我已经尝试了很多东西,很难记住什么。 我已经把我的configuration文件在github上 我的/etc/nginx/nginx.conf 我的/etc/php5/fpm/php-fpm.conf 目前,nginx.confconfiguration使用这个… server { server_name mydomain.tld; root /srv/data1/test; location ~ \.php$ { try_files $uri =404; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } } /etc/php5/fpm/pool.d/www.conf包含listen […]
我试图获得所有请求: http://example.com/downloads/* : http://example.com/downloads/*redirect到http://example.com/downloads/index.php除非请求的文件存在于/downloads/ 例如: http://example.com/downloads => /downloads/index.php http://example.com/downloads/unknowfile => /downloads/index.php http://example.com/downloads/existingfile => /downloads/existingfile 我目前的问题是我有redirect到PHP工作,但静态文件没有送达或相反。 这是我目前的虚拟主机conf :(redirect罚款,但静态文件发送到PHP和失败) server { listen 80; ## listen for ipv4; this line is default and implied server_name domain.com; root /data/www; index index.php index.html; location / { try_files $uri $uri/ /index.html; } error_page 404 /404.html; # redirect server error pages to […]