it-swarm-vi.com

Làm cách nào để chỉ định thư mục đích của trình tạo sơ đồ trang web của Google

Có cách nào để chỉ định vị trí của các tệp sơ đồ trang web được tạo bằng phiên bản mới nhất của Trình tạo Sơ đồ trang web của Google ?

Phiên bản là: 1.0.0.0? (một số phiên bản rất không có google, lol):

> Sudo /usr/local/google-sitemap-generator/bin/sitemap-daemon -v
Google Sitemap Generator (Beta) Version [1.0.0.0]

Bảng điều khiển có tùy chọn " Tên tệp sơ đồ trang web " nhưng không có tùy chọn nào để chỉ định thư mục đích? Nó luôn đặt các tệp XML sơ đồ trang web được tạo trong gốc tài liệu . Tôi giả sử nó phát hiện ra gốc tài liệu từ việc đọc nhật ký máy chủ web.

Tại sao tôi muốn đặt các tệp sơ đồ trang web vào thư mục khác?

Root tài liệu là không tốt cho phương thức triển khai của chúng tôi vì nó là symlink cho thư mục triển khai hiện tại thay đổi hàng ngày. Để các sơ đồ trang web xuất hiện như thể chúng ở gốc url (tức là http://www.example.com/sitemap.xml), chúng tôi sử dụng quy tắc bí danh để ánh xạ các tệp XML đến nơi chúng tôi thực sự giữ chúng, ví dụ: sử dụng nginx :

# Alias all XML files (e.g. Rss) to shared directory
location ~* /(.*\.xml)$ {
    alias /var/www/live/shared/xml/$1;    
}
3
Tom

giao thức sơ đồ trang web chính thức nói nó nên được đặt tại URL gốc mà tất cả các tệp mà nó trỏ đến để chia sẻ chung. Vì vậy, nếu các URL trong sơ đồ trang web của bạn giống như http://www.example.com/site/image1.jpghttp://www.example.com/site/mypage.html, bạn có thể đặt tệp sitemap.xml trong http://www.example.com/site/sitemap.xml hoặc http://www.example.com/sitemap.xml.

Nếu bạn không thể đặt sơ đồ trang web trong thư mục đó vì bất kỳ lý do gì, bạn có thể đặt nó ở bất kỳ đâu trên máy chủ của mình miễn là .htaccess hoặc ISAPI Rewrite (hoặc bất kỳ trình ghi lại URL nào khác) có thể "giả vờ" rằng đó là thư mục gốc. Tôi đã thực hiện thành công khi sử dụng ISAPI Rewrite trên trang web ASP.

5
JoshMock

Tôi chưa sử dụng công cụ đó vì vậy tôi không biết câu trả lời trực tiếp cho câu hỏi của bạn. Tuy nhiên, nếu bạn không thể tìm cách đặt các tệp ở nơi khác, bạn có thể sao chép chúng vào một thư mục khác như thế này:

cp -t sitemaps/ *.xml

Trong đó sitemaps là tên thư mục và *.xml chọn tất cả các tệp đầu vào, giả sử chúng có phần mở rộng .xml. Bạn có thể tạo một tập lệnh bó chạy trình tạo sơ đồ trang web và sau đó sao chép các tệp, tất cả trong một.

Mặc dù giao thức chính thức nói rằng sơ đồ trang web phải nằm trong thư mục gốc, nhưng thực tế chúng có thể đi bất cứ đâu trên cùng một tên miền (tôi đã đặt chúng vào thư mục sơ đồ trang web của riêng chúng trước đây, không có vấn đề gì).

Bạn cũng nên tạo một tệp chỉ mục sơ đồ trang web nếu bạn có nhiều sơ đồ trang web. Bằng cách này, bạn chỉ cần gửi tệp chỉ mục cho mỗi công cụ quản trị trang web.

2
DisgruntledGoat

Tôi đã gặp vấn đề tương tự và không tìm thấy câu trả lời của mình ở đây hoặc trên bất kỳ tệp trợ giúp hoặc cấu hình google nào. Vì vậy, hãy để tôi chia sẻ nó ở đây!

Tôi đọc nhật ký của mình và thấy:

2012-08-21T17: 55: 01Z: Nhà văn không thể mở tệp: /htdocs/web_sitemap_4149a902_000.xml (2)

Bạn phải tạo một liên kết tượng trưng gọi là "htdocs" trên thư mục gốc hệ thống của bạn:

cd /
ln -s /home/www/yoursiterootdir htdocs

Đừng hỏi tôi liệu symlink có hoạt động trên Windows không nhưng tôi thấy lệnh đó gần như "ln" cho những con bò trên Windows (NTFS)!

mklink [[/D] | [/H] | [/J]] linkName target

và sau đó :

2012-08-21T18: 05: 01Z: Thành công để tạo [Sơ đồ trang web] cho trang web [....]

và nơi tôi cần nó

thưởng thức

1
Mea_Poulpa