当前位置:   article > 正文

PHP之 发布项目到阿里云远程服务器_php项目如何搭建到服务器上

php项目如何搭建到服务器上

一,宝塔配置php运行环境

1.1 安装宝塔和php环境

 

 安装成功

 1.2 配置nginx

 配置主机,端口和默认页面

二,配置网站,FTP,MYSQL,PHPmyadmin

2.1 添加网站,并解析域名

 添加tang的域名解析

 2.2 连接phpmyadmin

 

2.3 连接FTP并上传文件到服务器

 修改远程服务器配置

2.5 访问报404

第一步需要注释掉默认的nginx配置文件种的server

 完整的nginx配置文件

  1. worker_processes auto;
  2. worker_rlimit_nofile 51200;
  3. events
  4. {
  5. worker_connections 51200;
  6. multi_accept on;
  7. }
  8. http {
  9. include mime.types;
  10. #include luawaf.conf;
  11. include proxy.conf;
  12. default_type application/octet-stream;
  13. server_names_hash_bucket_size 512;
  14. client_header_buffer_size 32k;
  15. large_client_header_buffers 4 32k;
  16. client_max_body_size 50m;
  17. sendfile on;
  18. tcp_nopush on;
  19. keepalive_timeout 60;
  20. tcp_nodelay on;
  21. fastcgi_connect_timeout 300;
  22. fastcgi_send_timeout 300;
  23. fastcgi_read_timeout 300;
  24. fastcgi_buffer_size 64k;
  25. fastcgi_buffers 4 64k;
  26. fastcgi_busy_buffers_size 128k;
  27. fastcgi_temp_file_write_size 256k;
  28. fastcgi_intercept_errors on;
  29. gzip on;
  30. gzip_min_length 1k;
  31. gzip_buffers 4 16k;
  32. gzip_http_version 1.1;
  33. gzip_comp_level 2;
  34. gzip_types text/plain application/javascript application/x-javascript text/javascript text/css application/xml;
  35. gzip_vary on;
  36. gzip_proxied expired no-cache no-store private auth;
  37. gzip_disable "MSIE [1-6]\.";
  38. limit_conn_zone $binary_remote_addr zone=perip:10m;
  39. limit_conn_zone $server_name zone=perserver:10m;
  40. server_tokens off;
  41. access_log off;
  42. server {
  43. listen 80;
  44. server_name localhost;
  45. #charset koi8-r;
  46. #access_log logs/host.access.log main;
  47. location / {
  48. root html;
  49. index index.html index.htm;
  50. }
  51. location /nginx_status {
  52. allow 127.0.0.1;
  53. deny all;
  54. stub_status on;
  55. access_log off;
  56. }
  57. }
  58. include vhost/*.conf;
  59. #加载vhost目录下的虚拟主机配置文件
  60. }

第二步在网站的配置文件里面新增支持php的location

 完整的网站配置文件

  1. server
  2. {
  3. listen 80;
  4. server_name tang.dongfangdasu.top;
  5. index index.php index.html index.htm default.php default.htm default.html;
  6. root c:/wwwroot/tang;
  7. #START-ERROR-PAGE
  8. #error_page 403 /403.html;
  9. error_page 404 /404.html;
  10. #error_page 502 /502.html;
  11. #END-ERROR-PAGE
  12. #HTTP_TO_HTTPS_START
  13. #HTTP_TO_HTTPS_END
  14. #LIMIT_INFO_START
  15. #LIMIT_INFO_END
  16. #SSL-INFO-START
  17. #SSL-INFO-END
  18. #反代清理缓存配置
  19. location ~ /purge(/.*) {
  20. proxy_cache_purge cache_one $1$is_args$args;
  21. }
  22. #proxy 反向代理
  23. include proxy/tang.dongfangdasu.top/*.conf;
  24. #PHP-INFO-START
  25. include php/54.conf;
  26. #PHP-INFO-END
  27. #REWRITE-START
  28. include rewrite/tang.dongfangdasu.top/*.conf;
  29. #REWRITE-END
  30. #redirect 重定向
  31. include redirect/tang.dongfangdasu.top/*.conf;
  32. #禁止访问的文件或目录
  33. location ~ ^/(\.user.ini|\.htaccess|\.git|\.svn|\.project|LICENSE|README.md)
  34. {
  35. return 404;
  36. }
  37. #一键申请SSL证书验证目录相关设置
  38. location ~ \.well-known{
  39. allow all;
  40. }
  41. access_log C:/BtSoft/wwwlogs/tang.dongfangdasu.top.log;
  42. error_log C:/BtSoft/wwwlogs/tang.dongfangdasu.top.error.log;
  43. location /{
  44. if ($request_method = 'OPTIONS') {
  45. #主要是定义请求响应头问题(跨域)
  46. add_header 'Access-Control-Allow-Origin' * always;
  47. add_header 'Access-Control-Allow-Headers' * always;
  48. add_header 'Access-Control-Allow-Methods' * always ;
  49. add_header 'Access-Control-Expose-Headers' 'Authorization' always;
  50. return 204;
  51. }
  52. root /www/wwwroot/tang;#项目根目录
  53. index index.html index.htm index.php;
  54. try_files $uri $uri/ /index.php$is_args$query_string; #laravel项目布署后404需要加上
  55. }
  56. }

如果是linux系统服务器,配置有点不一样:

添加网站之后,Nginx配置重置为默认,不需要在Nginx里面添加额外的php支持,直接在网站配置文件末尾添加PHP支持即可

  1.   location / {
  2.         try_files $uri $uri/ /index.php?$query_string;
  3.     }
  4.     #PHP配置
  5.     location ~ \.php$ {
  6.         #include snippets/fastcgi-php.conf;
  7.         #fastcgi_pass unix:/run/php/php7.0-fpm.sock;
  8.         include fastcgi.conf;
  9.         fastcgi_pass  unix:/tmp/php-cgi-70.sock;
  10.   }

这时候可以连上php,但有报错,提示不允许连接数据库,那我们来调试

报错修改mysql配置,把root用户的Host修改为%。

       1、连接服务器: mysql -u root -p

  2、看当前所有数据库:show databases;

  3、进入mysql数据库:use mysql;

  4、查看mysql数据库中所有的表:show tables;

  5、查看user表中的数据:select Host, User,Password from user;

  6、修改user表中的:update user set Host='%' where User='root';

  7、最后刷新一下:flush privileges;

通过宝塔修改数据库权限为所有人

可以看到不再报不能访问问题:

四,html+JS接口调试

4.1 连接远程域名,这部分源码在html那几章节中,可以去参考下

 注册

 我们看到已经注册成功

 

五,注意:

当然也可以不通过宝塔,自己单独下载相关软件,或者下载phpStudy这些集成软件,方法根正常windows系统配置流程没什么区别

六,php省略后缀,隐藏php后缀

1、在apache服务器下htdocs根目录下创建文件.htaccess,编辑以下内容:

RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-d

RewriteCond %{REQUEST_FILENAME}\.php -f

RewriteRule ^(.*)$ $1.php [L]

2、修改apache配置文件:/usr/local/httpd/conf/httpd.conf

开启rewrite模块:LoadModule rewrite_module modules/mod_rewrite.so

保证:Allowoverride ALL(配置文件有多个,请注意上下文)

3、重启apache:/usr/local/httpd/bin/apachectl restart

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AllinToyou/article/detail/307331
推荐阅读
相关标签
  

闽ICP备14008679号