ubuntu下配置nginx+php+mysql详解_PHP
1、更新
www.bitsCN.com
代码如下:
sudo apt-get update
2、安装nginx
代码如下:
sudo apt-get intsall nginx
Ubuntu安装之后的文件结构大致为:
* 所有的配置文件都在/etc/nginx下,并且每个虚拟主机已经安排在了/etc/nginx/sites-available下 www.bitsCN.com
*程序文件在/usr/sbin/nginx * 日志放在了/var/log/nginx中
*并已经在/etc/init.d/下创建了启动脚本nginx
* 默认的虚拟主机的目录设置在了/var/www/nginx-default
下面可以启动nginx来看看效果(请确保80端口没有其他服务在使用):
代码如下:
sudo /etc/init.d/nginx start
#或者简单的
代码如下:
service nginx start
然后打开浏览器,查看http://localhost/ 看看是否看到了”Welcome to nginx!” 如果看到了,说明安装成功.
当然,基本上,这块儿都不会出问题. 如果运行不成功,可以先
代码如下:
sudo killall apache2
杀掉apache进程
3、安装php
代码如下:
sudo apt-get install php5 php5-cgi php5-mysql php5-curl php5-gd php5-idn php-pear php5-imagick php5-imap php5-mcrypt php5-memcache php5-mhash php5-ming php5-pspell php5-recode php5-snmp php5-tidy php5-xmlrpc php5-sqlite php5-xsl
4、安装spawn-fcgi
为什么要安装spawn-fcgi呢,它用来控制php-cgi进程,以防止进程崩溃或是单进程的效率太低.
网上很多人都说要使用spawn-fcgi必须得安装lighttpd,实际上不必要,可以直接安装spawn-fcgi
运行:
代码如下:
sudo apt-get install spawn-fcgi
5、配置
接下来就是最让人头疼的配置.
配置Nginx和spawn-fcgi配合运行
(1).在/etc/nginx/fastcgi_params 文件最后,加入一行,可以用
sudo vi /etc/nginx/fastcgi_params
加入此行:
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
(2).另外需要在PHP-CGI的配置文件(Ubuntu 上此配置文件位于/etc/php5/cgi/php.ini)中,找到cgi.fix_pathinfo选项,修改为:
cgi.fix_pathinfo=1;
这样php-cgi方能正常使用SCRIPT_FILENAME这个变量.
(3).打开/etc/nginx/sites-available/default文件在
server { listen 80; server_name localhost;
下面添加web根目录的绝对地址,这里是使用的是nginx的默认地址
root /var/www/nginx-default
即root和server_name同级这段即相当于apache的默认目录
如果没有这个的话,容易在执行php 文件的时候,会提示”No input file specified”.
我就曾在此绕了好大个圈子才发现问题.然后修改
#location ~ .php$ {
#fastcgi_pass 127.0.0.1:9000;
#fastcgi_index index.php;
#fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
#includefastcgi_params;
#}
修改成
location ~ .php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /var/www/nginx-default$fastcgi_script_name;
include /etc/nginx/fastcgi_params; #包含fastcgi的参数文件地址
6、开始fast_cgi进程
sudo /usr/bin/spawn-fcgi -a 127.0.0.1 -p 9000 -C 5 -u www-data -g www-data -f /usr/bin/php5-cgi -P /var/run/fastcgi-php.pid
7、设置开机启动fastcgi进程并启动
sudo vi /etc/rc.local
添加下一行
/usr/bin/spawn-fcgi -a 127.0.0.1 -p 9000 -C 5 -u www-data -g www-data -f /usr/bin/php5-cgi -P /var/run/fastcgi-php.pid
如果打开php文件出现:No input file specified请检查php.ini的配置中
cgi.fix_pathinfo=1
doc_root=
还有,每个虚机要根据自己不同的虚机设置不同的目录,要保证这个路径正确.
检查/etc/nginx/sites-available下的配置文件中,server内包含 root 及地址 而非location内的root
启动
fast-cgisudo /usr/bin/spawn-fcgi -a 127.0.0.1 -p 9000 -C 5 -u www-data -g www-data -f /usr/bin/php5-cgi -P /var/run/fastcgi-php.pid
参数含义如下
* -f 指定调用FastCGI的进程的执行程序位置,根据系统上所装的PHP的情况具体设置
* -a 绑定到地址addr
* -p 绑定到端口port
* -s 绑定到unix socket的路径path
* -C 指定产生的FastCGI的进程数,默认为5(仅用于PHP)
* -P指定产生的进程的PID文件路径
* -u和-g FastCGI使用什么身份(-u 用户 -g 用户组)运行,Ubuntu下可以使用www-data,其他的根据情况配置,如nobody、apache等现在可以在web根目录下放个探针或php文件测试一下了
8、安装mysql
sudo apt-get install mysql-server mysql-client
中间会提示输入Root用户密码,依次输入即可.
启动MySQL
sudo /etc/init.d/mysql start
测试mysql服务是否正常:
运行
mysql -uroot -p
输入mysql密码
show databases;
如果看到下面的内容
| Database |
| information_schema |
| mysql |
则mysql已正确安装了.
至此,ubuntu下的nginx+php+mysql就安装完成了.

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

如今,Ubuntu不允许其用户打开终端是一个非常普遍的问题。如果您收到类似的问题并且不知道下一步该怎么做,请了解有关如何在Linux设备上解决此“Ubuntu无法打开终端”问题的五个修复程序。事不宜迟,让我们深入探讨导致它的原因及其可用的解决方案。为什么Ubuntu打不开它上面的终端?这主要发生在您安装一些有缺陷的软件或修改终端配置时。除此之外,与语言环境交互并破坏它们的新应用程序或游戏也可能导致类似的问题。一些用户在Ubuntu的活动菜单中搜索终端时报告修复了这个问题。这表明这个

ubuntu系统经常遇到有的文件夹顶面有个锁的形状,这个文件常常是无法进行编辑或者移动,这是因为对这个文件没有可以编辑等的权限,所以我们要修改它的权限,就能去掉右下角的锁,该怎么操作呢?下面我们就来看看详细的教程。1、在上锁的文件夹上右键--属性。2、选择窗口中的权限选项。3、把里面都选择为创建和删除文件。4、接着选择底部的更改包含文件的权限,里面同样都设置为创建和删除文件,最后记得点击右上角的更改。5、如果还是没有去掉上面的锁,或者当面的选项出现灰色无法操作,可以在里面右键--打开终端。6、使

在Ubuntu系统中,root用户通常是禁用状态的。要激活root用户,可以使用passwd命令设置密码,然后使用su-命令以root身份登录。根用户是具有系统管理权限且不受限制的用户。他拥有访问和修改文件、用户管理、软件安装和删除,以及系统配置更改等权限。根用户与普通用户有着明显的区别,根用户拥有系统中最高的权限和更广泛的控制权。根用户可以执行重要的系统命令和编辑系统文件,而普通用户则无法做到这一点。在本指南中,我将探讨Ubuntu根用户,如何以根用户身份登录,以及它与普通用户的不同之处。注意

Ubuntu24.04LTS,代号「NobleNumbat」即将发布!如果你正在使用的是Ubuntu23.10这类非LTS版本,迟早需要考虑升级。对于那些使用Ubuntu20.04LTS或Ubuntu22.04LTS的用户,是否升级值得深思。Canonical已经宣布,Ubuntu24.04LTS将提供长达12年的更新支持,细分如下:作为LTS版本,它会有5年的常规维护和安全更新。如果订阅UbuntuPro,还能享受额外5年的支持。目前,这个额外的支持期限已经延长至7年,这意味着你将获得长达12

ubuntu系统开始菜单里面列出了好多的软件图标,有很多不常用的图标,想要删除,该怎么删除呢?下面我们就来看看详细的教程。1、首先进入ubuntu桌面,点击左边面板下面的开始菜单。2、里面可以找到一个文本编辑器图标,我们要把它删除了。3、现在我们回到桌面直接鼠标右键打开终端。4、使用命令打开应用列表目录。sudonautilus/usr/share/applicationssudonautilus~/.local/share/applications5、在里面找到对应的文本编辑器图标。6、接着直

OBS是由世界各地的志愿贡献者在空闲时间开发的开源软件。一款视频直播录制软件,主要用于视频的录制、直播的创流。Ubuntu/Mint的安装请注意,OBSStudio在ChromeOS上不能完全工作,屏幕和窗口捕捉等功能不能使用。建议使用xserver-xorg1.18.4或更新的版本,以避免OBS中某些功能的潜在性能问题,如全屏投影仪。FFmpeg是必需的如果你没有安装FFmpeg(如果你不确定,那么你可能没有),你可以用以下命令得到它:sudoaptinstallffmpeg我这里已经安装有了

snap是Canonical为使用Linux内核和systemdinit系统的操作系统开发的软件打包和部署系统。这些被称为snap的软件包和使用它们的工具snapd可以在一系列的Linux发行版中使用,并允许上游软件开发者直接向用户发布他们的应用程序。借助snap,用户可以轻松地安装Linux应用程序,在默认情况下,snapd一天内会检查四次更新,并自动将snap应用更新到最新的版本。虽然有很多方法可以控制更新的安装时间和频率,但为了安全用户无法完全关闭自动更新。虽然snap的初衷很好,但很多开

Angular.js是一种可自由访问的JavaScript平台,用于创建动态应用程序。它允许您通过扩展HTML的语法作为模板语言,以快速、清晰地表示应用程序的各个方面。Angular.js提供了一系列工具,可帮助您编写、更新和测试代码。此外,它还提供了许多功能,如路由和表单管理。本指南将讨论在Ubuntu24上安装Angular的方法。首先,您需要安装Node.js。Node.js是一个基于ChromeV8引擎的JavaScript运行环境,可让您在服务器端运行JavaScript代码。要在Ub
