`
lonestone
  • 浏览: 92926 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

Nginx配置Yii和phpMyAdmin虚拟主机

 
阅读更多

在我们部署项目时经常需要用Nginx,同时需要支持url重写,还得安装一个phpmyadmin,这时候问题就来了。如何让phpmyadmin不在web根目录下?以下是配置文件样例:

 

server
{
     listen      80;
     server_name  dmis.sangou.net;
     index index.html index.htm index.php;
     root  /opt/www/dmis/;

     location /phpmyadmin {                
         root /opt/www/;                
         index index.php;        
     } 
     
     location ~ ^/phpmyadmin/.*\.(php|php5)$ {                
        root /opt/www/;                
        fastcgi_pass  unix:/tmp/php-cgi.sock;
        include fastcgi_params;
        fastcgi_param  DOCUMENT_ROOT  $document_root/phpmyadmin;
        #fastcgi_pass  127.0.0.1:9000;
        fastcgi_index index.php;

        set $path_info $request_uri;

        if ($request_uri ~ "^(.*)(\?.*)$") {
            set $path_info $1;
        }
        fastcgi_param PATH_INFO $path_info;     
     } 
     
    location / {
         if (!-e $request_filename){
           rewrite (.*) /index.php last;
        }
    }
    
    location ~ .*\.php?$
    {
        fastcgi_pass  unix:/tmp/php-cgi.sock;
        include fastcgi_params;
        #fastcgi_pass  127.0.0.1:9000;
        fastcgi_index index.php;

        set $path_info $request_uri;

        if ($request_uri ~ "^(.*)(\?.*)$") {
            set $path_info $1;
        }
        fastcgi_param PATH_INFO $path_info;
    }

   #error_page  404  =  /404.gif;
}

 

 

可以看到里面Phpmyadmin虚拟目录的设置,其顺序是很有讲究的。然后就是支持 yii 的url 重写规则,我们将其用 location / 进行限定。

 

接下来你登录pma,会发现被重定向到了根目录,这是怎么回事?经过一番查找,发现pma中有个设置 $cfg['PmaAbsoluteUri'] = ''; 默认是自动探测的,这里就有问题了。但修改这个没有用。我们就来硬的把,直接修改程序文件 libraries/auth/cookie.auth.lib.php, 找到:

// URL where to go:
        $redirect_url = $cfg['PmaAbsoluteUri'] . 'index.php';

 修改为

// URL where to go:
        $redirect_url = '/phpmyadmin/index.php';

 搞定。 

 

 

 

1
4
分享到:
评论
1 楼 uiexp 2011-08-23  
 

相关推荐

    nginx运行配置laravel框架虚拟主机

    nginx运行配置laravel框架虚拟主机

    使用nginx配置基于域名的虚拟主机实现​

    在IT行业中,网络服务器的管理是一项关键任务,而Nginx作为一款高性能的HTTP和反向代理服务器,常被用于配置虚拟主机以实现多站点的高效管理。本篇将详细探讨如何使用Nginx配置基于域名的虚拟主机,以便让一台服务器...

    windows下nginx配置https以及同一个端口监听多个网站即监听多个虚拟主机

    在Windows环境下,配置Nginx以支持HTTPS及在同一端口监听多个网站,即配置多个虚拟主机,是一项常见的网络服务设置任务。Nginx是一个高性能的HTTP和反向代理服务器,以其稳定性、高并发处理能力而受到广泛使用。下面...

    nginx配置服务器多虚拟主机

    本文将深入探讨如何利用Nginx配置多虚拟主机,包括静态网站主机、核心Web网站主机和业务性附属网站主机。 ### 一、理解Nginx虚拟主机 在Nginx中,虚拟主机是通过基于主机名或IP地址的请求路由来实现的。通过配置多...

    Nginx实现虚拟主机

    根据给定的信息,我们可以提取并展开以下几个关于Nginx实现虚拟主机的知识点: ...通过合理配置虚拟主机和其他高级特性,可以有效提升网站的性能和用户体验。希望上述知识点能够帮助您更好地理解和运用Nginx。

    centos7配置nginx虚拟主机

    centos7配置nginx虚拟主机

    Nginx虚拟主机(HTML).

    通过本次实验文档,我们可以了解到Nginx作为Web服务器时,如何配置基于域名的虚拟主机,如何处理静态网页请求,并且了解了虚拟主机的一些基础知识。这对于希望学习和使用Nginx来搭建网站的用户是一个很好的入门教程...

    Nginx 虚拟主机配置的三种方式(基于域名)

    在Nginx中,虚拟主机配置允许在一个服务器实例上托管多个独立的网站,这三种方式分别是基于IP、基于端口和基于域名的虚拟主机配置。本文重点讲解基于域名的虚拟主机配置方法,这对于多站点共用同一IP和端口的情况...

    Nginx实现多虚拟主机配置.docx

    下面将详细介绍Nginx如何实现基于IP和端口的虚拟主机配置。 **一、Nginx的应用** 1. **HTTP服务器**:Nginx可作为一个独立的HTTP服务器,用于提供静态网页内容。 2. **虚拟主机**:Nginx支持虚拟主机功能,能在...

    nginx配置多个虚拟主机vhost的方法示例

    在现代Web服务器环境中,虚拟主机是一个至关重要的概念,它允许一台服务器托管多个独立的网站,每个网站都有自己的域名。Nginx作为高性能的HTTP和反向代理...希望这个教程能帮助你理解和掌握Nginx虚拟主机的配置方法。

    nginx配置多个静态资源.docx

    可以定义多个server块来配置多个虚拟主机。 upstream块 upstream块用于定义后端服务器的设置,例如upstream fdfs_group1 { server 127.0.0.1:9011; }用于定义一个名为fdfs_group1的后端服务器。 location块 ...

    03-nginx虚拟主机配置.zip

    **Nginx虚拟主机配置详解** ...总结,通过Nginx配置虚拟主机和反向代理,我们可以高效地管理多个网站,并为复杂的应用场景提供灵活的解决方案。理解并熟练运用这些技术,对于提升服务器管理和运维能力至关重要。

    nginx配置多域名访问以及完整配置

    总结,Nginx的多域名配置、访问统计、日志请求头管理、反向代理和手机访问判断是其强大功能的一部分,可以帮助我们构建高效、灵活的Web服务架构。通过深入理解并正确配置这些选项,你可以更好地满足网站的需求,提升...

    Nginx部署-虚拟主机配置.docx

    在本文中,我们将深入探讨如何利用Nginx部署虚拟主机,包括多域名配置、多端口配置以及多IP配置。这些知识点对于搭建和管理多站点的网络环境至关重要。 一、多域名配置虚拟主机 1. 修改Nginx配置文件:Nginx的配置...

    Windows平台,Nginx配置文件修改自动加载重启

    在Windows平台上,使用Nginx作为Web服务器时,配置文件的管理和更新是日常运维工作的重要环节。当Nginx的配置文件被修改后,通常需要手动执行`nginx -s reload`命令来使改动生效,这在频繁调整配置时可能会显得繁琐...

    CentOS7.3下Nginx基于IP+端口的虚拟主机配置实战.pdf

    在本教程中,我们将详细介绍如何在CentOS 7.3系统下配置基于IP和端口的Nginx虚拟主机。首先,了解Nginx的基本概念是必要的。Nginx(发音为“engine x”)是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/...

    nginx多虚拟主机配置.pdf

    Nginx是一个高性能的HTTP和反向代理服务器,也是一个IMAP/...通过合理利用nginx.conf中的指令,并结合各虚拟主机的配置文件,可以灵活地管理多个网站或应用在同一台服务器上的运行,同时确保高效和安全地处理网络请求。

Global site tag (gtag.js) - Google Analytics