Linux deepin系统下配置nginx+php-fpm+PHPstorm并解决403/404/502/file not found错误

来源:互联网 发布:双11淘宝能便宜多少 编辑:程序博客网 时间:2024/05/17 08:43

想要顺利运行.php并不难,配置好基础后在/var/www/html下写文件运行浏览器访问就好了。但是博主自己想要使用PHPstorm在其他目录下建立工程并调试,于是花费了一番功夫,好在最后解决了

接下来是正题


首先是Linux下php基本运行环境的安装和配置

第一步安装环境,两条install命令到位

sudo apt install nginxsudo apt install php7.0-fpm


接着配置nginx,需要让它有处理.php的意识

cd /etc/nginx/sudo vim sites-available/default


这里有许多文章都介绍过了,编辑default文件,去掉PHP部分的注释,不再赘述



这个时候我们可以在default文件中看到一个root xxx的值,这个路径即运行php文件的根路径,我们后期要对它进行修改。至于现在,还是先看一下我们的工作成果吧。


进入root指定的根目录下(一般为/var/www/html来着?),创建一个php文件,保存后需要重启nginx和php-fpm服务

sudo service nginx restartsudo service php7.0-fpm restart



打开浏览器,输入localhost/yourPHP.php(懂我意思吧),应该会显示你想要输出的信息,这个信息可以是 echo 'Hello PHP' ,也可以是 phpinfo(),随你喜欢。


通过上面的设置,我们成功配置了PHP运行的基础环境,如果没有成功,请解决后再进行下一步。

在基础环境配置完毕后,我们就要开始搞事情了:将PHP根目录切换到我们喜欢的地方


首先是前面提到的default文件中root的值,这是我们的根目录,我们可以把它切换为/home/your_name/Documents/MySite


这时如果立刻重启服务后去浏览器检验,肯定是有问题的(其实也不一定),报错403.我们不妨浏览一下nginx的error.log,路径在nginx安装路径下的nginx.conf中是有写的,一般是/usr/log/nginx/error.log(记不太清了大家可以自己去查一查,自己动手印象会更加深刻),显示为permission denied,访问权限问题


sudo vim nginx.conf(之前提到的文件,在nginx安装目录下,一般为/etc/nginx/nginx.conf)

我们需要将第一行中的user 值更改为root,即使用root权限。


这样之后我们是可以访问文件夹下的文件的。在浏览器中输入localhost/index.html的话,我们是可以看到自己写的主页的(如果有写的话),记得每次检验前要重启服务,因为已经对它做了改动。

不过当我们访问xxx.php时,会显示file not found。这是php-fpm在处理文件时使用了错误的路径,修改方法也很简单。

sudo vim /etc/php/7.0/fpm/pool.d/www.conf#更改user=(你的用户名),group=(你的用户名)



上面的路径为php-fpm的安装路径,大家可以自行找一下。


重启php-fpm服务,浏览器中就可以正常运行(解释?)php文件了。


通过以上步骤,我们可以使用笔记本或vim编辑项目目录下的文件了。

然后我们继续下一步搞事:正常使用PHPstorm编辑网站文件,包括HTML和PHP等。

启动PHPstorm,选择

file->settings->language&frameworks->php

这里需要选择已经安装好的php,网上有很多介绍,不再赘述(这里的要求似乎并不高,能找到一个可运行的php版本就好)


接下来,选择

file->settings->build,execution,deployment->deployment
add->local or amount folder->ok(记住不要选in space,这样虽然能生效但是修改文件后浏览器是不能实时发生变动的,虽然我也不知道问什么,不过在地址栏重新敲一下回车就OK?)

Upload/Download project files的路径选择我们的项目路径,同时mappings下的local path也改成这个路径,应用后OK退出


选择文件用浏览器打开,应当是满意的结果(好吧这是我把大一Java课程设计搬出来做大三web实验了)


原创粉丝点击