准备
首先你需要一台可以供自己的服务器,由于xl大多数使用Ubuntu所以在此教程就用Ubuntu来给大家做搭建演示!
这里我们采用Vultr的服务器来进行演示!如何部署服务器请参考“如何购买Vultr服务器”
然后使用SSH协议连接服务器请参考“MobaXterm通过ssh远程连接linux系统”
教程
首先我们需要安装nginx,php,phpmyadmin由于nginx的php依赖于php-fpm所以我们还需要安装php-fpm
接下来我们一次输入安装指令Ubuntu/Debian都是依赖于apt包管理器,我们先要更新包源及更新,依次输入:
sudo apt-get update
sudo apt-get upgrade
等待升级完毕,然后安装我们所需的nginx,php,phpmyadmin,php-fpm程序,依次输入:
sudo apt-get install nginx
sudo apt-get install php
sudo apt-get install phpmyadmin
sudo apt-get install php-fpm
在安装phpmyadmin的时候他是会有一个UI界面,我们首先按键盘上的TAB把apache2服务前面的点去掉,这时红点会跳到OK上面,按下回车
接下来它会提示我们是否使用默认的配置文件 我们选择”NO”
安装完后我们打开浏览器输入我们服务器的IP可以看到“Welcome to nginx!”这说明我们的nginx已经正常运作了,现在我们需要配置php与phpmyadmin
配置PHP(PHP-fpm)
注:可见官方wiki文档
我们一次输入一下代码:
sudo apt install vim //下载新版的vim编辑器
vi /etc/nginx/fastcgi_params//使用vim编辑fastcgi_params文件 替换为一下内容:
fastcgi_param QUERY_STRING $query_string; fastcgi_param REQUEST_METHOD $request_method; fastcgi_param CONTENT_TYPE $content_type; fastcgi_param CONTENT_LENGTH $content_length; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param SCRIPT_NAME $fastcgi_script_name; fastcgi_param PATH_INFO $fastcgi_path_info; fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info; fastcgi_param REQUEST_URI $request_uri; fastcgi_param DOCUMENT_URI $document_uri; fastcgi_param DOCUMENT_ROOT $document_root; fastcgi_param SERVER_PROTOCOL $server_protocol; fastcgi_param GATEWAY_INTERFACE CGI/1.1; fastcgi_param SERVER_SOFTWARE nginx/$nginx_version; fastcgi_param REMOTE_ADDR $remote_addr; fastcgi_param REMOTE_PORT $remote_port; fastcgi_param SERVER_ADDR $server_addr; fastcgi_param SERVER_PORT $server_port; fastcgi_param SERVER_NAME $server_name; fastcgi_param HTTPS $https; # PHP only, required if PHP was built with --enable-force-cgi-redirect fastcgi_param REDIRECT_STATUS 200;
</pre>
<pre>
vi /etc/nginx/sites-available/default
在server中加入一下内容. 并且需要在index项添加index.php
location ~ [^/]\.php(/|$) {
fastcgi_split_path_info ^(.+?\.php)(/.*)$;
if (!-f $document_root$fastcgi_script_name) {
return 404;
}
fastcgi_param HTTP_PROXY "";
fastcgi_pass 127.0.0.1:9000;
# 如果您正在使用unix socket更改fastcgi_pass为
#fastcgi_pass unix:/var/run/php/php版本号-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
}
按下ECS输入:wq保存退出,由于我这边是使用的unix socket所以我应该改为fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;PHP的版本号为7.2,你可以通过在控制台输入php -v来检查php的版本信息
在控制台输入rm /var/www/html/index.nginx-debian.html //删除nginx自带主页
创建php测试文件代码如下:
vi /var/www/html/html.php //输入一下内容 :
<?php
phpinfo();
?>
控制台输入service nginx restart重启nginx服务,然后访问网站你会看到phpinfo()函数的测试页
到这里,我们的PHP(php-fpm)就配置完了
配置Phpmysql
vi /etc/nginx/sites-available/default 再次在service中添加一下代码:
location /phpmyadmin {
root /usr/share/;
index index.php index.html index.htm;
location ~ ^/phpmyadmin/(.+.php)$ {
try_files $uri =404;
root /usr/share/;
fastcgi_pass 127.0.0.1:9000;
# 如果您正在使用unix socket更改fastcgi_pass为
#fastcgi_pass unix:/var/run/php/php版本号-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include /etc/nginx/fastcgi_params;
}
location ~* ^/phpmyadmin/(.+.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ {
root /usr/share/;
}
}
location /phpMyAdmin {
rewrite ^/* /phpmyadmin last;
}
按下ECS输入:wq保存退出,service nginx restart重启nginx服务,我们输入IP/phpmyadmin就可以跳转到phpmyadmin页面说明我们配置完成了!
参考
如何部署服务器请参考“如何购买Vultr服务器”
使用SSH协议连接服务器请参考“MobaXterm通过ssh远程连接linux系统”