fedora22 配置Nginx,Mysql,PHP
“LNMP开发环境是PHP语言开发网站的主流环境。”
安装nginx
nginx在fedora当中是一个默认包,所以直接使用命令行进行安装即可:
1 | sudo dnf install nginx -y |
然后启动nginx服务:
1 | sudo service nginx start |
当然,也可以设置他为开机启动:
1 | sudo systemctl enable nginx.service |
然后在你的浏览器当中输入localhost,如果看到以下界面即为安装成功:
安装MySQL
mysql在fedora当中叫做MariaDB,但是也可以用安装mysql的命令直接进行安装:
1 | sudo dnf install mysql mysql-server -y |
然后启动mysql服务:
1 | sudo service mariadb start |
当然,也可以设置他为开机启动:
1 | sudo systemctl enable mariadb.service |
然后输入命令:
1 | sudo netstat -tap | grep mysql |
如果出现以下代码,说明启动成功:
1 | tcp 0 0 0.0.0.0:mysql 0.0.0.0:* LISTEN |
启动成功后,我们需要给root用户设置一个密码,以防止任何人都可以访问我们的数据库:
1 | mysqladmin -u root password "root" |
安装PHP
我们可以让PHP5在nginx中以FastCGI的模式工作。
1 | sudo dnf install php lighttpd-fastcgi php-devel php-fpm php-mysql -y |
然后启动php-fpm服务:
1 | sudo service php-fpm start |
当然,也可以设置他为开机启动:
1 | sudo systemctl enable php-fpm.service |
启动之后,还需要配置nginx使之支持php
配置nginx支持php
首先备份原先的conf文件
1 | mv /etc/nginx/nginx.conf /etc/nginx/nginx.conf.bak |
然后复制一份配置文件
1 | cp /etc/nginx/nginx.conf.default /etc/nginx/nginx.conf |
新建两个目录用于分别存放可用和生效的配置文件
1 | mkdir -p /etc/nginx/sites-avaliable |
这两个目录是模仿Ubuntu的nginx目录进行创建的,其中sites-analiable文件夹用于存放所有可用的server配置,sites-enabled文件夹用于存放生效的server配置
修改nginx配置文件,添加fastcgi支持
1 | vim /etc/nginx/nginx.conf |
将文件修改为以下内容:
1 | # For more information on configuration, see: |
文件将从conf.d和sites-enabled文件夹中读取所有的server配置,首先需要在sites-avaliable文件夹中建立可用的server配置,然后软链接到sites-enabled文件夹中,这样就可以修改可用配置时,生效配置也会修改,但是删除生效配置时不会对可用配置造成影响:
1 | vim /etc/nginx/sites-avaliable/default |
将其修改为以下内容:
1 | # |
然后在sites-enabled文件夹中建立可用配置的软链接即可
1 | ln -s /etc/nginx/sites-avaliable/default /etc/nginx/sites-enabled/ |
具体的其他nginx相关配置可以详见nginx官方网站
另外,如果php报与时区相关的错误,则需要修改/etc/php.ini文件,在其中[Date]
标签下加入一行date.timezone = 'Asia/Shanghai'
即可
测试
每次配置nginx文件后,都需要将其进行重启:
1 | sudo service nginx restart |
每次配置php.ini文件后,也需要将其进行重启:
1 | sudo service php-fpm restart |
然后建立index.php文件进行测试:
1 | vim /usr/share/nginx/html/info.php |
然后在浏览器中输入servername进行测试:
1 | 输入:localhost/ .php |