搭建Nginx+Ftp出现的问题

1.端口被占用

启动nginx时显示

nginx: [emerg] bind() to 0.0.0.0:888 failed (98: Address already in use)

杀死占端口的进程或者改相应的默认的端口号
我的是docker占用了80端口所以service docker stop 就ok了

2.重启虚拟机后,再次重启nginx会报错:

open() “/var/run/nginx/nginx.pid” failed (2: No such file or
directory)

1.进入 cd /usr/local/nginx/conf/ 目录,编辑配置文件nginx.conf ;
2.在配置文件中有个注释的地方: #pid logs/nginx.pid;
3.将注释放开,并修改为:pid /usr/local/nginx/logs/nginx.pid;
4.在 /usr/local/nginx 目录下创建 logs 目录:mkdir /usr/local/nginx/logs
5.启动nginx服务:/usr/local/nginx/sbin/nginx

3.无法通过http://IP地址/images/2.png访问

参考 https://blog.csdn.net/csdn_lqr/article/details/53334583
一、安装Nginx
先安装Nginx,看我之前发的文章: 搭建Nginx服务器

二、安装vsftpd
再安装vsftpd组件,看我之前发的文章: Linux安装ftp组件(8步完成)

三、开始搭建Nginx图片服务器
1、效果
例如:图片通过ftp服务上传到/home/ftpuser/www/images目录下,我想通过访问Nginx服务器来访问ftp目录下的图片文件,该url为http://192.168.128.128/images/xxx.jpg。即使用http请求访问原本需要使用ftp请求才能访问到的资源文件。(不懂可先看最后图解测试)

2、实现
①需要在nginx/html下创建一个images文件夹(实际访问的不是这个路径)
mkdir /usr/local/nginx/html/images

②修改nginx/conf/nginx.conf在默认的server里再添加一个location并指定实际路径:
location /images/ {
root /home/ftpuser/www/;
autoindex on;
}

修改完后需要重新启动nginx

./nginx -s reload

说明

1)root则是将images映射到/home/ftpuser/www/images/
2)autoindex on便是打开浏览功能。

注意

1)ftpuser这个用户需要自己创建,在Linux安装ftp组件(8步完成)已经创建过,所以在这里不再创建,若没有,则需要自己创建,名字任意。
2)root /home/ftpuser/www/这后面是不带images的且root后面要有空格。www目录下有images目录,用于存放图片!!

③修改用户访问权限
chown ftpuser /home/ftpuser
chmod 777 -R /home/ftpuser


作者:GitLqr
来源:CSDN
原文:https://blog.csdn.net/csdn_lqr/article/details/53334583
版权声明:本文为博主原创文章,转载请附上博文链接!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
TrueNAS是一个基于FreeBSD的存储操作系统,它内置了一些基本的网络服务,比如FTP,SMB,NFS,但是它并没有内置nginx,php和mysql。 如果你想在TrueNAS上搭建一个nginx+php+mysql服务器,你需要进行以下步骤: 1. 安装pkg包管理器 在TrueNAS的Shell界面中,输入以下命令: ``` pkg ``` 如果提示你需要安装pkg,输入以下命令进行安装: ``` pkg install pkg ``` 2. 安装nginx 在Shell界面中,输入以下命令进行nginx的安装: ``` pkg install nginx ``` 安装完成后,你可以通过以下命令启动nginx服务: ``` service nginx start ``` 3. 安装php 在Shell界面中,输入以下命令进行php的安装: ``` pkg install php74 ``` 安装完成后,你需要在nginx的配置文件中添加php的支持。找到nginx的配置文件,一般是在/usr/local/etc/nginx/nginx.conf,添加以下内容: ``` location ~ \.php$ { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /usr/local/www$fastcgi_script_name; include fastcgi_params; } ``` 4. 安装mysql 在Shell界面中,输入以下命令进行mysql的安装: ``` pkg install mysql80-server ``` 安装完成后,你可以通过以下命令启动mysql服务: ``` service mysql-server start ``` 5. 配置nginx和mysql 在TrueNAS的Web界面中,进入Jails -> Configuration,创建一个新的Jail,并勾选“Auto start”选项。 进入Jail的Shell界面,编辑以下文件: - /usr/local/etc/nginx/nginx.conf - /usr/local/etc/php.ini - /usr/local/etc/mysql/my.cnf 根据你的需求进行配置,然后重启服务即可。 希望这些步骤能够帮助你在TrueNAS上搭建一个nginx+php+mysql服务器。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值