我是Web开发领域的新手,对于这个问题有点不合时宜或过于简单的问题,我们深感抱歉。我刚刚使用Laravel开发了我的第一个Web应用程序,它打算用作特定工具的Intranet应用程序。我在Windows计算机上开发了该应用程序,现在我们正在进行部署,可以远程访问该设施的服务器(Windows Server 2012)。但是,服务器没有Internet连接,因此我只能复制,粘贴(或任何其他脱机操作),因此我脱机安装了XAMPP,只是将项目文件复制粘贴到服务器的htdocs目录中,然后添加了服务器以下文件中的名称 “ C:\ xampp \ apache \ conf \ extra \ httpd-vhosts” “ C:\ Windows \ System32 \ drivers \ etc \ hosts” 像这样:
in "C:\xampp\apache\conf\extra\httpd-vhosts"
<VirtualHost *:80>
DocumentRoot "C:/xampp/htdocs"
ServerName localhost
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "C:/xampp/htdocs/proj/public"
ServerName www.something.com
</VirtualHost>
in "C:\Windows\System32\drivers\etc\hosts"
127.0.0.1 localhost
127.0.0.1 www.something.com
这样做之后,应用程序可以正常启动,但是当然也需要在服务器中配置数据库,所以这是我的问题: 1-这是做这样的事情的正确方法,还是有更好的方法(就安全性,可维护性等总体标准而言)? 2-如果这是正确的方法,那么我应该将数据库从我的机器复制粘贴到服务器上,还是请他们提供对服务器的Internet访问权限,以便我可以安装composer,git和其他允许我执行以下操作的工具:从代码自动生成数据库? 3-如果我继续使用这种方式,修改代码将非常麻烦,因为每次我进行编辑时,我都必须遵循在机器中编辑了哪些文件并相应地在服务器中进行更改,因此正确的方法是什么去维护应用程序?还是只能在服务器中使用Internet连接?
对于这个问题,我很抱歉,我只是一个新手,想全面了解Web应用程序的部署,当然,如果还有其他完全不同的方法,我很高兴了解这一点。
答案 0 :(得分:1)
您应该具有数据库连接所需的信息,例如主机,端口,用户名,密码和数据库名称。
拥有它们后,只需在远程项目目录中编辑.env
文件以匹配这些信息。
然后运行php artisan migrate
,这将创建数据库和所有表。您不需要互联网连接即可。
由于您的远程计算机没有Internet连接,因此您可以将所有文件从本地目录复制到远程计算机。 Composer只会将所有内容安装到vendor
目录中,但是如果您也将其复制,则无需运行composer
。
要稍微加快该过程,可以使用WinSCP,该同步将允许您同步本地和远程目录。当然,这不是最佳实践,但对您而言是很大的帮助。