I have a simple .NET Core 6 web app, and I have GoDaddy’s Windows Hosting Deluxe package. It uses Plesk to manage the sites.
GoDaddy does support .NET Core 6
It appears the only way to get files into Plesk in an automated way is to use FTP. So on github I have this deploy script:
name: 🚀 Deploy website via FTPS
on:
workflow_dispatch:
push:
branches:
- main
permissions:
contents: write
jobs:
web-deploy:
name: 🎉 Deploy
runs-on: ubuntu-latest
steps:
- name: 🚚 Get latest code
uses: actions/checkout@v3
- name: Setup .NET Core SDK ${{ matrix.dotnet-version }}
uses: actions/setup-dotnet@v3
with:
dotnet-version: ${{ matrix.dotnet-version }}
- name: Install dependencies
run: dotnet restore
- name: Build
run: dotnet build --configuration Release --no-restore
- name: 📂 Upload files via FTPS
uses: SamKirkland/[email protected]
with:
server: my-real-domain.com
username: ${{ secrets.FTP_USERNAME }}
password: ${{ secrets.FTP_PASSWORD }}
local-dir: ./bin/Release/net6.0/
server-dir: ./
protocol: ftps
dangerous-clean-slate: true
exclude: |
.cspell.json
package.json
package-lock.json
That builds everything just fine, and then uploads the contents of ./bin/Release/net6.0/
to my instance of Plesk on GoDaddy.
But, I just get a big red "403 – Forbidden: Access is denied" error on my site. What am I doing wrong here? Am I uploading the wrong files, or is there something else entirely that I’m missing?
2
Answers
Sorry to answer my own question, but this was a fairly simple fix someone might run into in the future.
I needed to run
dotnet publish
instead ofdotnet build
!Then I just need to upload the contents of the
./bin/Release/net6.0/publish/
folder.It works now. Here's my working deploy script
Basically 403 forbidden error message because that you haven’t setup your default page correctly. Please kindly check it on your end first. If still not resolve your issue, you may refer to this post https://windowswebhostingreview.com/how-to-fix-403-forbidden-error-message/ about few things that you need to check.