Articles of PHP的

nginx获取url的子域名并且指定文档根目录

我没有在Nginx的专家,但我通过这样做解决了我的问题: server_name ~^(?<vhost>.*)$; root /var/www/$vhost/public; 例如,如果用户在Web浏览器中inputhttp: //sysadmin.mydomain.com,nginx将使用/var/www/sysadmin.mydomain.com/public的doc根目录 这工作正常,但在这样做,我已经创build了PHP $ _SERVER ['SERVER_NAME']; 它会打印: 〜^(?。*)$导致我的代码中的其他地方的问题。 我的解决scheme适用于nginx,但它不是正确的解决scheme。 我怎样才能实现这一点,仍然保留“可读”的服务器名称?

nginx将一些PHP URL作为下载而不是执行

一些PHP URL正在被下载,而不是由Nginx执行。 我有一个现有的Web应用程序运行良好。 我的任务是在主应用程序的文件夹中添加其他已安装的应用程序。 每个应用程序都有自己的前端控制器index.php脚本。 对于这个设置,我在$document_root/app里面创build了符号链接,符号链接指向一个包含index.php前端控制器的文件夹。 当我导航到大多数URL时,一切正常,主要应用程序前端控制器被执行,我得到预期的结果。 当我导航到一个不存在的应用程序时,我得到了404 Not Found ,这是预期的。 但是,当我导航到其中一个应用程序时,浏览器下载应用程序前端控制器。 root /my/web/root; location / { try_files $uri /$server_name$uri /shared$uri /index.php$is_args$args; } location ~ [^/]\.php(/|$) { disable_symlinks off; fastcgi_split_path_info ^(.+\.php\b)(.*)$; fastcgi_param SERVER_NAME $host; fastcgi_param PATH_INFO $fastcgi_path_info; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param SCRIPT_NAME /index.php; fastcgi_index index.php; include fastcgi.conf; fastcgi_pass php-fpm; } location ~ ^/app/([az-]+)(/.*)?$ { try_files […]

FuelPHP与Nginx路由不起作用

我是新来的FuelPHP和一般的Web开发。 我试图redirect一个用户到不同的控制器,但出于某种原因,我不能让页面显示。 主页显示正常,如果我更改默认主页到博客页面显示正常。 这里是主页上的链接: <?php echo Html::anchor('blog', 'BLOG'); ?> <?php echo Html::anchor('blog', 'BLOG'); ?> 然后我也有控制器它也指出: class Controller_Blog extends Controller_Template { public function action_index() { return Response::forge(View::forge('blog/index', $views,false)->render()); } 当我点击这个链接时,它会把我带到“mywebsite.com/blog”,但是它会显示“访问被拒绝”。 这里是我的nginx虚拟主机: server { listen 80; server_name mywebsite.com index index.php index.html index.html root /home/me/fuelphp_project/public; location / { index index.php try_files $uri $uri @php_index; location ~ \.php$ { […]

pthread与PHP 7.0.8(ZTS)

我想用PHP 7.0.8(ZTS)(手动编译和configuration)使用pthreads我已经在编译php时添加followinGconfiguration: –enable-maintainer-zts \ –enable-pthreads=shared \ –with-tsrm-pthreads \ 注意:fpm正在运行,pid 25546 注意:准备处理连接 我使用pecl: pecl install pthreads-3.1.6添加pthread扩展,并将extension = pthreads.so添加到我的php.ini中。 但重启php7-fpm后,php-fpm没有运行: 注意:正在完成… 注意:退出,再见! 我有一个502 nginx错误。 如何在php.ini中添加这个扩展名而不退出php-fpm?

nginx php5-fpm conf文件在ubuntu 14.04中丢失

我的php5-fpm在nginx上工作正常。 但昨天,它没有工作。 给php5-fpm -t命令后,我得到以下错误: [05-Jul-2016 08:59:32] ERROR: failed to open configuration file '/etc/php5/fpm/php-fpm.conf': No such file or directory (2) [05-Jul-2016 08:59:32] ERROR: failed to load configuration file '/etc/php5/fpm/php-fpm.conf' [05-Jul-2016 08:59:32] ERROR: FPM initialization failed 在/etc/php5/fpm/conf.d和/etc/php5/fpm/pool.d上给出ls命令后,没有文件。 我的Nginx conf: server { listen 80 default_server; listen [::]:80 default_server ipv6only=on; root /var/www/html; index index.html index.htm index.php; server_name localhost; location […]

joomla致命错误:允许的内存大小272629760字节用尽

我有Joomla,virtuemart,当启用debugging模式得到错误。 如何解决它? 我有vps服务器centos Fatal error: Allowed memory size of 272629760 bytes exhausted (tried to allocate 284095 bytes) in /plugins/system/debug/debug.php on line 1213 Fatal error: Allowed memory size of 272629760 bytes exhausted (tried to allocate 232974 bytes) in /plugins/system/debug/debug.php on line 1061 Fatal error: Allowed memory size of 272629760 bytes exhausted (tried to allocate 233968 bytes) […]

将docker容器映射到常规的开发域名

我是新来的docker工人,并且最近使用phpdocker.io(php7,nginx,mysql)生成器安装了docker container / image。 使用docker-compose开始它,它的工作真棒。 如果我去localhost / phpinfo.php我的常规系统PHP版本加载(5.6),如果我去localhost: 8080 /phpinfo.php我的dockerPHP版本加载(7.0),所以它的工作正常。 我的问题是:有什么办法将我的本地主机:8080映射到一个常规的域名,就像我通常使用常规的本地主机项目一样? Withouth必须使用localhost:8080即:myproject.dev 不知道这是否是特别与docker相关的。

为什么我得到错误:在Ajax请求期间从上游读取响应头时,recv()失败(104:由对等方重置连接)

我有问题与Ajax。 请求后5分钟停止工作。 我不知道是什么原因造成的。 我看了很多页面,发现一个溶剂,但也没有提供一个好的。 我可以做什么 ?

docker的PHP,Nginx的超级慢与wordpress

我创build了一个简单的docker堆栈:php,nginx,mariadb 每个人都有自己的容器。 现在我在这个堆栈上运行一个简单的WordPress应用程序,但该网站加载超慢〜4-5秒 我看透了 docker stats 和统计看起来不错,最高15%的CPU使用率,内存几乎没有达到5% 我在这里有所有的docker-compose和dockerfiles: https://gist.github.com/tzookb/f4a868ae06a474676afbb4fce8055902 会很乐意得知为什么这么慢。 **在MacBook Pro的docker

我如何禁用PHP的nginx gzip?

我打算阻止nginx从gzipping一个PHP请求。 我已经有了以下内容: @ini_set('zlib.output_compression', 'Off'); @ini_set('implicit_flush', 1); header('X-Accel-Buffering: no'); 根据我发现的一切,单独使用X-Accel-Buffering应该禁用gzip,但是当我从浏览器加载这个页面时,我仍然可以看到标题: Content-Encoding:gzip 我使用的是php7-fpm,nginx 1.10.1,debian8 编辑: 我做了一个testing,使用sleep()来延迟输出。 它看起来像header('X-Accel-Buffering: no'); 是工作,但它只能防止缓冲,而不是gzipping。 我想gzip是以某种方式作为一个stream。 我可以看到,如果我输出1000个字节,循环echo声明每个1个字符,浏览器接收大约11kb。 如果我回显str_rep x 1000,那么发送的数据less得多。 那里一定有一些开销。 无论如何,我需要禁用gzip,以便我可以发送大量内容并测量下载时间。 如果它被压缩,我不知道实际吞吐量是多less。