转 服务器搭建3
|-转 CentOS8下yum安装LNMP
最后都安装完成了,index.php也放到www下了,结果显示403 Forbidden。去查了错误日志
9888#0: *4 directory index of "/etc/nginx/html/" is forbidden
文章目录
安装nginx
安装mysql
安装PHP
修改配置文件
测试
安装nginx
https://blog.csdn.net/RougeK/article/details/10867...
安装mysql
https://www.cnblogs.com/joker-ma/p/14925474.html
安装PHP(注意安装php同时要安装php-fpm)
https://blog.csdn.net/RougeK/article/details/10867...
修改配置文件
配置域名 & 让 nginx 支持解析 php
server {
listen 80;
server_name 172.16.12.100; #域名或ip
index index.php index.html;
root /usr/share/nginx/html/weiboApi/public; #项目目录
#charset koi8-r;
#access_log /var/log/nginx/host.access.log main;
location / {
try_files $uri $uri/ /index.php$is_args$args;
}
location ~ \.php$ {
#这里是nginx 项目目录的路径,root = 下面的 $document_root
fastcgi_pass 127.0.0.1:9000;...
|--转 Centos8安装安装mysql8
https://www.cnblogs.com/joker-ma/p/14925474.html
一、安装mysql
// 更新软件 1. yum update // 下载mysql,保证网络连通 2. wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm // 下载mysql,保证网络连通 3. rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm // 下载mysql,保证网络连通 4. yum module disable mysql // 下载mysql,保证网络连通 5. yum install mysql-community-server 这里如果安装失败,失败提示是:Error:GPG check FAILED,则执行命令 yum install mysql-community-server --nogpgcheck OK了 // 启动mysql 6. service mysqld start // 查看状态 7. service mysqld status // 查看默认密码,找个地方记住一会要登陆 8. grep 'temporary password' /var/log/mysqld.log // 进入mysql 9. mysql -u root -p // 更改密码规则,即可以设置root等密码 10. set global validate_password.length=4; // 更改密码规则,即可以设置root等密码 11. set global validate_password.policy=0; // 更改密码规则,即可以设置root等密码 12. set global validate_password.check_user_name = 0; // 设置密码为root 13. ALTER USER 'root'@'localhost' IDENTIFIED BY 'root'; // 刷新 14. flush privileges; // 使用mysql 15. use mysql; // 查询 16. select host, user from user; // 修改localhost,以便主机连接 17. update user set host = '%' where user = 'root'; // 刷新 18. flush privileges; // 设置root权限 19. GRANT ALL ON *.* TO 'root'@'%' ; // 刷新 20. flush privileges; // 退出 21. exit // 重启mysql 22. service mysqld restart
二、注意事项
1、skip-grant-tables 当mysql没有密码或者不知道密码时,添加在my.cnf(/etc/my.cnf)的[mysqld]下面,可以跳过密码验证,但是当改好密码之后把它注释,不然远程连数据库报错2013。 ...
|--转 nginx 不解析php怎么办
nginx不解析php的解决办法:首先找到nginx的配置文件;然后去掉相应的注释;接着重启nginx,访问页面;最后重新安装php5-fpm,并再次访问即可。
解决方案
找到nginx的配置文件,修改文件使其支持php
配置文件位置在:/etc/nginx/sites_available/ 下面,如果你没有创建过其他的配置文件,那么应该有一个的默认的名为“default”的配置文件。
1. 打开配置文件,找到文件中的如下内容:
#location ~ \.php$ {
#fastcgi_split_path_info ^(.+\.php)(/.+)$;
# NOTE: You should have “cgi.fix_pathinfo = 0;” in php.ini
# With php5-cgi alone:
# fastcgi_pass 127.0.0.1:9000;
# With php5-fpm:
#fastcgi_pass unix:/var/run/php5-fpm.sock;...
|--转 directory index of "/usr/share/nginx/html/" is forbidden
安装完nginx之后访问本机ip,结果直接报错,然后去查看nginx错误日志,看到如下错误信息,意思是html下面没有
directory index of "/usr/share/nginx/html/" is forbidden
1、如果在/usr/share/nginx/html下面没有index.php,index.html的时候,直接访问域名,找不到文件,会报403 forbidden。
解决办法:直接输入以下命令:
#删除index.html文件
rm /usr/share/nginx/html/index.html
#在html目录下面新建一个index.php文件,内容是`<?php phpinfo(); ?>` 查看phpinfo
echo "<?php phpinfo(); ?>" >> /usr/share/nginx/html/index.php
2、还有一个原因就是你的默认的nginx配置文件的location没有指定root路径,我的就是这个问题。
这个就直接在默认的server上面加上:
location / {
root html;
index index.php index.html index.htm;
}
3、如果还是不能正常访问,那就进到nginx的默认配置文件里去找一下,看看有没有如下代码:
location ~* \.php$ {
fastcgi_index index.php;
fastcgi_pass 127.0.0.1:9000;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
}
上面代码的意思是把php文件交给php-fpm处理,php-fpm占用的端口号是9000。
配置完以后,记得重启nginx,或者reload一下:...