基于阿里云服务器环境搭建到项目上线系列
前言:最近购买了域名和一台阿里云服务器准备做点东西放上去,所以准备把环境搭建到项目上线的过程记录下来,计划一个系列6篇文章
- 基于阿里云服务器环境搭建到项目上线系列文章之一——putty使用秘钥登录远程服务器
- 基于阿里云服务器环境搭建到项目上线系列文章之二——搭建LNMP环境
- 基于阿里云服务器环境搭建到项目上线系列文章之三——安装git
- 基于阿里云服务器环境搭建到项目上线系列文章之四——安装composer
- 基于阿里云服务器环境搭建到项目上线系列文章之五——项目仓库github基本使用
- 基于阿里云服务器环境搭建到项目上线系列文章之六——项目部署
基于阿里云服务器环境搭建到项目上线系列文章之六——项目部署
MYSQL数据库部署
允许远程连接服务器数据库
-
设置允许远程连接前,测试连接:
-
设置允许远程连接
登录服务器,登录mysqlmysql -u root -p 输入密码:****** 执行如下命令: GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '你的数据库密码' WITH GRANT OPTION; FLUSH PRIVILEGES;
此时,再连接服务器MySQL数据库,提示连接成功,如下:
新增项目数据库用户和权限
- 新增项目数据库
create database yishubj character set = utf8;
- 新增专属项目数据库用户
服务器端MySQL登录成功,如图:CREATE USER 'yishubj'@'%' IDENTIFIED BY '设置此用户密码'; GRANT ALL PRIVILEGES ON yishubj.* TO 'yishubj'@'%'; flush privileges;
项目数据库初始化
把自己设置的数据库表文件通过上面Navicat连接工具导入对应数据库即可,步骤如下:
- 双击打开上一步创建的数据库(yishubj),右键该数据库名称(yishubj)=>运行SQL文件,跳出弹窗
- 选中要导入的数据库表结构数据文件,设置编码,点击开始:
导入成功,会有成功提示,导入失败会有失败提示,如果失败,说明SQL文件有问题,请根据提示修改。
nginx配置部署
新增域名配置文件
- 登录服务器,创建域名配置文件
cd /etc/nginx/conf.d/ touch www_yishubj.conf #域名文件随意定义,以conf为文件后缀,会自动加载到nginx.conf文件内
新增配置内容
- 执行命令打开配置文件
cd /etc/nginx/conf.d/ vim www_yishubj.conf
- 直接上配置文件,将如下内容添加到文件内。如使用该配置文件,需要修改的地方下面会列出:
server { listen 80; server_name www.yishubj.com m.yishubj.com; charset utf8; root /home/www/mozhilin/; index index.php index.html index.htm; client_max_body_size 200m; client_body_buffer_size 4096k; underscores_in_headers on; #charset koi8-r; #access_log /var/log/nginx/host.access.log main; location / { #root /usr/share/nginx/html; #index index.html index.htm; try_files $uri $uri/ /index.php?&$args /index.php?$query_string; if (!-e $request_filename){ rewrite ^/(.*) /index.php last; } allow all; #include /etc/nginx/cors.conf; } location = /favicon.ico { log_not_found off; access_log off; } location = /robots.txt { allow all; log_not_found off; access_log off; } location ~* \.(css|png|jpg|jpeg|ico)$ { expires max; log_not_found off; } location ~ /(assets|upfile|uploads|tmp|log|css|js|images|statics|demo)/.*\.(php|php5)?$ { #deny all; allow all; } location ~ /(\.svn|\.git|\.ht|\.DS) { deny all; internal; } location ~ \.php($|/) { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_split_path_info ^(.+\.php)(.*)$; fastcgi_param PATH_INFO $fastcgi_path_info; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info; fastcgi_param CI_ENV 'development'; fastcgi_param access_token $http_access_token; fastcgi_param refresh_token $http_refresh_token; include fastcgi_params; #include fastcgi.conf; } #error_page 404 /404.html; # redirect server error pages to the static page /50x.html # error_page 500 502 503 504 /50x.html; location = /50x.html { root /usr/share/nginx/html; } # proxy the PHP scripts to Apache listening on 127.0.0.1:80 # #location ~ \.php$ { # proxy_pass http://127.0.0.1; #} # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 # #location ~ \.php$ { # root html; # fastcgi_pass 127.0.0.1:9000; # fastcgi_index index.php; # fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name; # include fastcgi_params; #} # deny access to .htaccess files, if Apache's document root # concurs with nginx's one # #location ~ /\.ht { # deny all; #} }
- 用到自己的环境中,需要修改的配置,如下:
server_name www.yishubj.com m.yishubj.com; #改为自己网站的域名 root /home/www/mozhilin/; #改为自己项目在服务器上的目录地址
PHP项目部署
数据库连接配置
- 设置database.php文件数据库连接
$db['default'] = [ 'hostname' => '127.0.0.1', 'username' => 'yishubj', 'password' => '用户yishubj对应的密码', 'database' => 'yishubj', 'DBPrefix' => 'ysbj_', ]; #这里根据自己的数据库配置文件填写相应信息,不同的框架配置文件不同,需灵活运用。
目录访问权限配置
- 初次访问网站,可能会有提示某些目录没有访问权限,如cache、uploadfile、vendor等目录,这时,需要开发者登录到服务器进行权限设置
- cache和uploadfile目录对www用户有写权限,这里是我项目的示例:
cd /home/www/yishubj/ chmod -R 777 cache chmod -R 777 uploadfile
至此,服务器项目部署上线工作已经完成,希望对阅读者有所帮助,且能够学会灵活运用,而不是照搬照抄。
********************只要思想不滑坡,办法总比困难多********************